у меня есть эта Регистрация для с завещанию:Два значения формы не сохраняются
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<p><%= f.label :email %><br />
<%= f.email_field :email %></p>
<p><%= f.label :password %><br />
<%= f.password_field :password %></p>
<p><%= f.label :password_confirmation %><br />
<%= f.password_field :password_confirmation %></p>
<%= f.fields_for :profile, resource.build_profile do |t| %>
<div class ="field">
<%= t.label :type, "Are you an artist or listener?" %><br />
<div>Artist: <%= t.radio_button :type, "Profile::Artist", :id => "artist_button" %></div>
<div>Listener: <%= t.radio_button :type, "Profile::Listener", :id => "listener_button" %></div>
</div>
<% end %>
<p class="before"><%= f.submit "Sign up", :id => "new_user_submit" %></p>
<% end %>
Тогда у меня есть некоторые JQuery, который вставляет поле динамически:
$("#artist_button").click(function() {
if ($('input#user_name').parent().hasClass('field')){
$('input#user_name').parent().remove();
}
$(".before").before('<div class="field"><label for="user_name">Artist or Band/Group Name</label><br><input id="user_name" name="user[name]" size="30" type="text"></div>');
});
Однако, атрибут type
, который вложенные в пользовательскую форму, и атрибут name
, который динамически вставлен, не сохраняется в базе данных. Значения вводятся как null.
Почему это? Как я могу это исправить?
UPDATE:
Атрибут имя не было attr_accessible
, и это было причиной его не могут быть сохранены в БД. Однако атрибут type, который вложен в пользовательскую форму, равен attr_accessible
, но по-прежнему не сохраняется в db.
Что подано? Что вы видите в параметрах в своем журнале разработки? – Roman
они 'attr_accessible'? – apneadiving
это в параметрах, но я не думаю, что они 'attr_accessible' ... будут печатать в модели профиля? –