2017-10-27 31 views
3

インデックスページで以下を編集するにはどうすればよいですか?私は、ビューは、indexアクションRailsインライン編集

<% @request.each do |s| %> 
    <%= s.message %> 
    <%= s.date %> 
<% end %> 

は場所で最高の宝石を試みたが、私は <% = best_in_place @requestをしようとした時はいつでも私はそう動作するようには思えdoes notの編集をインライン化できるようにしたいし、次のように更新します:message%>これは、未知のメソッドのエラーをスローします:message。 Is this this <%= best_in_place @request, :message %>これと同じ<%= s.message %>

レールのバージョン5.1.4でうまく動作し、インライン編集を動作させるにはどうすればよいですか?

答えて

0

レールバージョン5.1.4で最適な動作が得られ、 インライン編集を機能させるにはどうすればよいですか?

はい、動作します。jQueryが必要で、gemとJSライブラリを追加する必要があります。 jQueryのために

:あなたのapplication.jsファイルに続いて

$ yarn add jquery 

:best_in_placeについては

//= require jquery 

、Gemfileに宝石を追加します。次に

gem 'best_in_place', '~> 3.0.1' 

でライブラリあなたのapplication.jsファイル:

//= require jquery 
//= require best_in_place 
... 

$(document).ready(function() { 
    /* Activating Best In Place */ 
    jQuery(".best_in_place").best_in_place(); 
}); 

jqueryの直後にbest_in_place jsが表示され、同じファイルで初期化されます。同じファイルに初期化するには//= require_tree .を追加する必要があります。

次に、あなたのビューでは、オブジェクトや属性を渡す必要があります:

<% @request.each do |request| %> 
    <%= best_in_place request, :message %> 
    ... 
<% end %> 
+0

私は#<#<クラス:0x00007f1cb32834e0>:0x00007f1cb301b720>のための 'message_path」未定義のメソッドのエラーが出る – John

+0

あなたが見ることができます私はあなたの実際のコードは何ですか、そのエラーを今起きている? –

+0

<%= best_in_place request、:message%> – John