Передача параметров Rails в форму - PullRequest
1 голос
/ 28 февраля 2012

Я пытаюсь передать две переменные для формы вложенной модели, но получаю ошибку. Вероятно, это простая синтаксическая ошибка, которую кто-то видел сразу, но я ее не вижу.

У меня есть шаблон, показывающий пользователей, если вы щелкнете по одному из них, для использования в форме необходимо указать user_id и community _id. И сообщество, и пользователь должным образом объявлены в контроллере.

ссылка на форму:

<%= link_to "award badge", award_badge_badges_path, :user_id => user.id, :community_id => @community.id %>

В форме используются две модели - награждения и награждения. User_id и community_id необходимы для badge_winners, которые вложены в значки. Я получаю ошибку "undefined local variable or method 'user_id' for #<#<Class:0x77544c0>:0x7714230>", поэтому я думаю, что что-то не так с 2-й и 3-й строками в форме. Вот форма:

<%= form_for(@badge) do |f| %>
<%= f.hidden_field :user_id ,:value => user_id %>
<%= f.hidden_field :community_id ,:value => community_id %>
    <%= f.label :Description %>
    <%= f.text_area :description %>

<%= f.fields_for :badge_winners do |builder| %>
    <%= render "badge_winner", :f => builder, :locals => {:user_id => user_id, :community_id => community_id} %>
<% end %>

<%= f.submit "Give Badge" %>
<% end %>

шаблон шоу в контроллере:

def award_badge
  @badge = Badge.new
  badge_winners = @badge.badge_winners.build
end

знак победителя частичного

 <%= f.hidden_field :user_id ,:value => user_id %>
 <%= f.hidden_field :community_id ,:value => community_id %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...