중첩 된 특성 및 장치에 문제가 있습니다. How do I use nested attributes with the devise model과 유사한 문제입니다. 지금까지 내가 여기에 권장 내가 모든 것을 설정할 수있어 한 말할 수 : 나는 사용자 및 구독에 대한 연결을 설정 한 Override devise registrations controller중첩 된 특성을 Devise와 함께 사용할 때 질량 지정 경고
, 내가 "accepts_nested_attributes_for"
있고, attr_accessible
에서 :subscriptions_attributes
을 포함,하지만 난 얻을 Devise 컨트롤러의 경고.
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable,:recoverable, :rememberable, :trackable, :validatable
validates_presence_of :first_name, :last_name
has_many :subscriptions
accepts_nested_attributes_for :subscriptions
attr_accessible :first_name, :last_name, :email, :password, :password_confirmation, :remember_me, :subscriptions_attributes
...
end
-
class Subscription < ActiveRecord::Base
belongs_to :user
validates_presence_of :user_id, :chargify_subscription_id, :chargify_product_handle
attr_accessible :user_id, :chargify_subscription_id, :chargify_product_handle
...
end
유증/등록/new.html.erb :
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<p><%= f.label :first_name %><br />
<%= f.text_field :first_name %></p>
...
<%= f.fields_for :subscription do |s| %>
<p><%= s.label :chargify_subscription_id %><br />
<%= s.text_field :chargify_subscription_id %></p>
...
나는 다음과 같은 경고 받고 있어요 : 나는 '
Started POST "/users" for 127.0.0.1 at Sat May 14 12:38:49 -0700 2011
Processing by Devise::RegistrationsController#create as HTML
Parameters: {"commit"=>"Sign up", "authenticity_token"=>"wNZhZgIhYm9CpZfhvDiRBqaJseoO8QvR0Mk9VIybhcI=", "utf8"=>"✓", "user"=>{"password_confirmation"=>"[FILTERED]", "last_name"=>"9", "subscription"=>{"chargify_product_handle"=>"medium", "chargify_subscription_id"=>"123"}, "password"=>"[FILTERED]", "first_name"=>"9", "email"=>"[email protected] com"}}
WARNING: Can't mass-assign protected attributes: subscription
을 012에서 subscription_attributes
(단수)을 사용해 보았습니다.하지만 작동하지 않습니다.
내가 잘못하고있는 것에 대한 제안 사항이 있으십니까? 감사합니다. .
'attr_accessible : subscription' 설정을 시도 했습니까? – ecoologic
@ecoologic -'Devise :: RegistrationsController # create'에'unknown attribute : subscription' 오류가 있습니다. 또한'attr_accessible : subscription'을 시도했지만 원래 오류가 발생했습니다. – stupakov