簡體   English   中英

設計-可確認的不確定方法

[英]Devise - confirmable undefined method

我最近為我公司正在開發的網站獲取了Ruby代碼。 我已經安裝了Rails,並運行bundle來獲取寶石。 然后,我設置PostgreSQL並更改了database.yml文件中的詳細信息。 我運行rake db:migrateundefined method confirmable' for #<ActiveRecord::ConnectionAdapters::Table:0xaeae3cc>返回undefined method confirmable' for #<ActiveRecord::ConnectionAdapters::Table:0xaeae3cc>
已經安裝了Devise,但是如果我運行rails g devise:install ,它將告訴我進行一些手動設置,確保已完成。
如果有幫助,該應用程序托管在Heroku上。

設計(2.1.2,2.0.0)導軌(3.2.8,3.2.0)

您需要為用戶使用創建設計資源

rails generate devise user

如果在初始生成Devise的遷移之后設置了可confirmable模塊,則需要手動創建遷移

class AddConfirmableToDevise < ActiveRecord::Migration
  def up
    add_column :users, :confirmation_token, :string
    add_column :users, :confirmed_at, :datetime
    add_column :users, :confirmation_sent_at, :datetime
    # add_column :users, :unconfirmed_email, :string # Only if using reconfirmable
    add_index :users, :confirmation_token, unique: true
    execute("UPDATE users SET confirmed_at = NOW()")
    # All existing user accounts should be able to log in after this.
    # Remind: Rails using SQLite as default. And SQLite has no such function :NOW.
    # Use :date('now') instead of :NOW when using SQLite.
    # => execute("UPDATE users SET confirmed_at = date('now')")
    # Or => User.all.update_all confirmed_at: Time.now
  end

  def down
    remove_columns :users, :confirmation_token, :confirmed_at, :confirmation_sent_at
    # remove_columns :users, :unconfirmed_email # Only if using reconfirmable
  end
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM