ビジネスのテーブルができるように、コードが機能しています。ビジネス情報の編集をクリックできる鉛筆アイコンがあります。編集情報は、モーダル ポップアップ ボックスの内部に部分的に表示されます。唯一の問題は、必要な変更を行って更新をクリックすると、そのビジネスの「表示」ページに送信されることです。私がやりたいことは、ポップアップボックスを閉じて、情報を更新することです。これは、コントローラーの更新機能です。
def update
@business = Business.find(params[:id])
respond_to do |format|
if @business.update_attributes(params[:business])
flash[:notice] = 'Business was successfully updated.'
format.html { redirect_to(business_url(@business)) }
format.js
else
format.html { render :action => "edit" }
format.xml { render :xml => @business.errors, :status => :unprocessable_entity }
end
end
終わり
railscast 43 に従ってみましたが、.rjs ファイルを作成しましたが、まったく機能しませんでした。私のアップデートはまだショーページに連れて行ってくれました。どんな助けでも大歓迎です。
編集:さらにコードを追加しました。
<% form_for(@business) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :name %><br />
<%= f.text_field :name %>
</p>
...
<%= f.label :business_category %><br />
<%= f.select :business_category_id, @business_categories_map, :selected => @business.business_category_id %>
</p>
<p>
<%= f.label :description %><br />
<%= f.text_area :description %>
</p>
<p>
<%= f.submit 'Update' %>
</p>
<% end %>
これは、ポップアップのインデックスを介して呼び出されている編集ページ内のフォームです。
<div id="popupEdit<%=h business.id %>" class="popupContact">
<a class="popupClose<%=h business.id %>" id="popupClose">x</a>
<% if business.business_category_id %>
<% @business = business %>
<%= render "business/edit" %>
<% end %>
</div>