gpt4 book ai didi

ruby-on-rails - 设计隐藏字段

转载 作者:行者123 更新时间:2023-12-04 03:45:29 25 4
gpt4 key购买 nike

我创建了一个设计模型

迁移是:

t.string :provider, null: false, default: "email"
t.string :uid, null: false, default: ""

## Database authenticatable
t.string :encrypted_password, null: false, default: ""

## Recoverable
t.string :reset_password_token
t.datetime :reset_password_sent_at

# etc...

当我这样做时 rails c并输入 User在那里我得到了一个巨大的列列表
User(id: integer, provider: string, uid: string, encrypted_password: 
string, reset_password_token: string, reset_password_sent_at: datetime,
remember_created_at: datetime, sign_in_count: integer,
current_sign_in_at: datetime, last_sign_in_at: datetime,
current_sign_in_ip: string, last_sign_in_ip: string,
confirmation_token: string, confirmed_at: datetime,
confirmation_sent_at: datetime, unconfirmed_email: string...

但是当我输入 u = User.find(1) .它只有一些列 id, provider, uid, created_at, updated_at .

当我这样做时 u.to_json我收到 {"id":1,"provider":"email","uid":"mymail@mail.com","name":"Name","surname":"Surname","email":"mymail@mail.com","created_at":"2016-08-07T18:27:24.186Z","updated_at":"2016-08-07T18:34:48.647Z"} .

它忽略像 confirmed_at 这样的字段, confirmation_sent_at等等...

所以,我想在我的模型中添加一些更多的“隐藏”列。我该怎么做?

谢谢!

最佳答案

设计有 BLACKLIST_FOR_SERIALIZATION为之不断。在源代码中检查它:https://github.com/plataformatec/devise/blob/master/lib/devise/models/authenticatable.rb#L59

您可以在 config/initializers/devise.rb 的设计配置中隐藏序列化列。像这样的线:
Devise::Models::Authenticatable::BLACKLIST_FOR_SERIALIZATION.concat [:column_1, :column2]

关于ruby-on-rails - 设计隐藏字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38817448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com