Userモデルは、このようなSTHに見える報告工夫ensure_authentication_tokenは、未定義のメソッド
class DeviseCreateUsers < ActiveRecord::Migration
def self.up
create_table(:users) do |t|
t.database_authenticatable :null => false
t.recoverable
t.rememberable
t.trackable
t.token_authenticatable
t.timestamps
end
add_index :users, :email, :unique => true
add_index :users, :reset_password_token, :unique => true
add_index :users, :authentication_token, :unique => true
end
def self.down
drop_table :users
end
end
:
config.token_authentication_key = :auth_token
私のユーザーの移行は次のようになります
ユーザーを作成するときに、パラメータを入力すると、
{"utf8"=>"✓",
"authenticity_token"=>"+F8cjCoauVKhZPSJLhW+AAhui1DygBcODsYn4Va/ktY=",
"user"=>{"first_name"=>"any_name",
"last_name"=>"any_name",
"email"=>"[email protected]",
"password"=>"[FILTERED]",
"password_confirmation"=>"[FILTERED]",
"cell_phone"=>"any_number",
"city"=>"some_city",
"state"=>"some_state",
"country"=>"U.S.A",
"user_type"=>"student"},
"commit"=>"Sign up"}
しかし、ユーザーの作成中に、まだ私はエラーを次取得:私はここで間違って
NameError in Devise::RegistrationsController#create
undefined local variable or method `ensure_authentication_token' for #<User:0x007fd4448f7350>
何をやっていますか?
P.S.私のGemfileでは、宝石を考案、次のように設定されている:それは私の悪かった
gem 'devise', :git => 'git://github.com/plataformatec/devise.git', :branch => 'master'
モデルに 'before_save:ensure_authentication_token'という行があるのはなぜですか?根拠は何ですか? – clyfe
私はそれがユーザークラスにある必要があることがわかったリソースによると。だから、私はモデルにとどまっています。 –
どのようなリソースがありますか?私はそれが原因であると信じています。もしあなたがそれを取り除くと、エラーは消え去りますが、問題は "何が意味ですか?"です。 – clyfe