1
Client
에 Address
이 있고 Province
에 속하는 내 응용 프로그램 내 관계가 있습니다.try 시도와 함께 델리게이트 사용 방법
는 이제 클라이언트 데이터 근처에 지방의 이름을 데려 가고 싶다는, 그래서 나는 client.rb의 방법을 만들어 :
def province_name
try(:address).try(:province).try(:name)
end
문제는 없습니다 모든 클라이언트가 주소에 합류했다고합니다. 이 방법은 효과가 있지만보기에는 좋지 않습니다. 더 나은 방법으로 쓸 수 있습니까, 아마도 delegate
방법을 사용하고 있습니까?
나에게 잘 보이는. 추함은 방법 안에 숨어 있습니다. –
'address'에'delegate : name, to : : province'를 사용할 수 있으며'address.name'에 의해 액세스 할 수 있습니다. –
[이것을 확인하십시오] (http://stackoverflow.com/questions/25758830/long-nil- safe-method-chains) 및 [this] (http://simonecarletti.com/blog/2009/12/inside-ruby-on-rails-delegate/) – Nithin