私はRails 3とJQuery Star Rateプラグインhttp://orkans-tmp.22web.net/star_rating/index.html#main-menu=1&demo-tabs=1を使用しようとしています。問題は、プラグインによって生成された隠しフィールドは、次にレールフォームRails 3 Jqueryスター評価プラグインの問題投稿
<%= form_for(@wine) do |f| %>
<h3 class="h3wine"></h3>
<div class="field">
<%= f.label :name , :class => "left"%>
<label class="right"><%= f.text_field :name %> </label><br />
</div>
<div class="note_fields">
<h2 style="margin-left: 20%;">Note</h2>
<% f.fields_for :notes do |builder| %>
<%= render 'note_fields', :f => builder %>
<% end %>
</div>
<span>
<%= f.submit %>
</span>
<% end %>
に提出されていないことである部分note_fields.html.erbだからすべてがOK、に関連している
<script>
$("#stars-wrapper1").stars();
</script>
<p>
<div class="field">
Rating: <span id="stars-cap"></span>
<div id="stars-wrapper1">
<br>
<% [ '1', '2', '3', '4', '5' ].each do |rates| %>
<%= f.radio_button :rating, rates%>
<% end %>
</div>
</div>
<div class="field">
<%= f.label :text, :class => "left" %>
<label class="right"><%= f.text_area :text,:size => "60x12" %></label><br />
</div>
</p>
のようなものです星を表示し、データベースから「評価」の値を表示します。問題は、ログファイルにフィールド評価が表示されない場合です。星が変更された後も更新されます
<input type="hidden" value="5" name="wine[notes_attributes][0][rating]" disabled="">
:
生成hiidenフィールドは、このようなものです。
Parameters: {"commit"=>"Update Wine", "wine"=>{"name"=>"Borba", "notes_attributes"=>{"0"=>{"text"=>"borbocas", "id"=>"6666"}}}, "authenticity_token"=>"/FsKTnSm2eAvPQiXie
ああ:ログこの表示するもので
。それが助けになるなら、私はプラグインを使用せず、radio_buttonsを操作してもOKです。ヘルプ:)
更新ため
おかげ - あなたのすべてに感謝 -
まさに@Kris :)私は昨日の夜を実現..しかし、私は答えを投稿するにはあまりにも疲れていました。ありがとうたくさん:)
私は、送信イベントフォームにJavaScript関数をバインドしました。したがって、フォームが送信されると、disabled属性は削除されます。 その属性が掲載取得する必要があるようにあなたが無効フィールドが
<script>
$("form").submit(function() {
$("input[name^=\"wine[notes_attributes][0][rating]\"]").removeAttr("disabled");});
$("#stars-wrapper1").stars();
</script>
Thanks guys :)
は便利かもしれません:http://teachmetocode.com/screencasts/building-a-star-rating-system-in-ruby-on-rails-with-jquery/ – apneadiving