두 가지 모델, 속성 모델 및 응용 프로그램 모델이 있습니다. 응용 프로그램 has_many 속성 및 속성 belongs_to 응용 프로그램. 따라서 속성 모델에는 해당 속성과 연결된 응용 프로그램을 나타내는 "application_id"필드가 있습니다.레일 링크를 클릭하여 클릭하면 ActiveRecord 속성이 업데이트됩니다.
속성보기 페이지에서 가능한 모든 응용 프로그램의 목록을 표시하고 응용 프로그램에 링크가 있으면이 속성을 클릭하면 속성 모델의 application_id가 해당 응용 프로그램의 ID로 간단히 업데이트됩니다.
def show
@property=Property.find(params[:id])
@owner=User.find(Property.find(params[:id]).user_id)
end
def update
@property=Property.find(params[:id])
if @property.update_attributes(property_params)
flash[:success] = "Application added"
redirect_to @property #going to change these redirects; this is just to get it working for now
else
redirect_to @property
end
end
private
def property_params
params.require(:property).permit(:address, :zip_code, :application_template_id)
end
이 ISN '추가 관련 속성 컨트롤러 코드 -
보기/속성/show.html.erb
Choose an application template:
<ol class="microposts">
<% @owner.application.each do |template| %>
<li><%= link_to "Application #{template.id}", :controller => "properties", :action => "update", :method => :put, :application_id => template.id %></li>
<% end %>
</ol>
편집 :
여기 내 관련 코드입니다 그래도 일하고있어. 누군가가 내가하려고하는 것을 할 수 있도록 link_to 코드를 조정하는 방법을 알려줄 수 있습니까?
또한 컨트롤러 코드를 게시하십시오. – Bijendra
@GhostRider - 내가 여기에서 작업하고있는 뷰이므로 내 속성 컨트롤러에 show 작업을 게시했습니다. 내 업데이트 작업에서 아직 정의하지 않은 문제가 있습니까? 나는 link_to 태그에서 update 액션을 명시 적으로 참조함으로써 여기에 추가 할 필요가 없다고 생각했다. 어쩌면 틀렸을 수도 있습니다. – tim5046
업데이트 작업을 작성해야합니다. –