는 내가보기에 다음과 같습니다모델에서 뷰 또는 스코프에 논리를 삽입하려면 어떻게합니까?
<% unless contact_email.statuses.empty?%>
(<%= contact_email.statuses.find(:last).status%>)
<% end %>
CONTACT_EMAIL 특정 모델의 인스턴스입니다.
이렇게 할 수 있습니까?
class ContactEmail < ActiveRecord::Base
attr_accessible :contact_id, :email_id, :status, :subject, :body, :date_created, :date_sent
def status
unless contact_email.statuses.empty?
contact_email.statuses.find(:last).status
end
end
end
이 할 수있는 더 좋은 방법은 무엇입니까? 거기에 사용할 수있는 방법이 있습니까? 비어있는 경우 기본값에 대한 연산자?
<% = contact_email.status =>
값이 있다면하지 않을 경우 다음을 표시 쇼 :
기본적으로, 내가보기에 다음을 수행 할 수 있도록하고 싶습니다 아무것도.
그렇게을 따르지 않는 한 생각 호출 할 수 있습니다 statuses.empty이면 반환 하시겠습니까? 비어있는 경우 상태 메서드에서 반환된다는 의미입니까? – Angela
예, status 메소드는'statuses.empty?'가 없으면 nil을 반환하고 그렇지 않으면 메소드의 마지막 명령문 인 마지막 상태를 반환합니다 – nas