Я использую разработать для регистрации и пытаюсь гнездо формы для знака вверх и только этот раздел не отображается в видеУплотненный Форма не отображается
модель пользователя
class User < ActiveRecord::Base
has_many :languages_users
has_many :languages, :through => :languages_users
accepts_nested_attributes_for :languages_users
end
registrations_controller .RB
class Users::RegistrationsController < Devise::RegistrationsController
before_filter :configure_sign_up_params, only: [:create]
def new
build_resource({})
resource.languages_users.build
respond_with self.resource
end
def create
super
end
protected
def configure_permitted_parameters
devise_parameter_sanitizer.for(:sign_up) { |u|
u.permit(:email, :password, :password_confirmation, :bio, :location, :last_name, :first_name, :nationality, :avatar, languages_users_attributes: [:language_id, :level]) }
end
end
соответствующую часть формы sign_up
<%= form_for(resource, as: resource_name, url: "users/registration_path(resource_name)") do |f| %>
<%= f.fields_for :languages_users do |lu| %>
<br>
<div class="fields">
<%= lu.collection_select(:language_id, Language.order('language ASC').all, :id, :language) %><br>
<%= lu.hidden_field :level, value: 1 %>
</div>
<% end %>
<% end %>
соответствующие маршруты
Rails.application.routes.draw do
resources :languages
resources :languages_users
devise_for :users
end
любое понимание будет оценен по достоинству!
Привет, что вы имеете в виду, перезагружая ресурс между регистрирующим # новый контроллер и вид? Я ничего не изменил при разработке, кроме того, что я поставил выше - я пропустил еще один шаг? Кроме того, languages_users - это таблица соединений между языком и моделью пользователя, таким образом, имя. – gwalshington
1) в вашем шаблоне просмотра макета может быть 2) если у вас нет логики в вашей модели language_user, вы можете использовать связь has_and_belong_to_many между пользователем и языком, если вы намереваетесь добавить в эту модель еще несколько вещей (например, уровень владения языком), я бы переименовал его. – nicolas
Я поставил вид выше, так что я так не думаю. – gwalshington