devise_token_auth 如何访问 user.created_at
devise_token_auth how to access user.created_at
我在 Rails 5 api
上使用 devise_token_auth
目前,当我向 /auth/sign_in
发出 POST
请求时,一切顺利,我得到的数据如下所示:
"data": {
"id": 3,
"email": "me@user.com",
"name": null,
"nickname": null,
"bio": null,
"description": null,
"url": null,
"image": {
"url": null
},
"provider": "email",
"uid": "me@user.com",
"allow_password_change": false,
"role": null
}
但是,我还希望能够访问已启用的时间戳属性(created_at、updated_at):
ActiveRecord::Schema.define(version: 2018_10_18_201621) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
create_table "users", force: :cascade do |t|
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
有什么想法吗?提前致谢
在 github 存储库 https://github.com/lynndylanhurley/devise_token_auth/issues/597 上查看有关覆盖 devise_token_auth
gem 上的渲染方法的问题讨论。
在您的 User
模型上尝试以下代码,这样您就可以使用自定义序列化程序而不是默认序列化程序:
def token_validation_response
UserSerializer.root = false
UserSerializer.new(self).as_json
end
我在 Rails 5 api
上使用 devise_token_auth目前,当我向 /auth/sign_in
发出 POST
请求时,一切顺利,我得到的数据如下所示:
"data": {
"id": 3,
"email": "me@user.com",
"name": null,
"nickname": null,
"bio": null,
"description": null,
"url": null,
"image": {
"url": null
},
"provider": "email",
"uid": "me@user.com",
"allow_password_change": false,
"role": null
}
但是,我还希望能够访问已启用的时间戳属性(created_at、updated_at):
ActiveRecord::Schema.define(version: 2018_10_18_201621) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
create_table "users", force: :cascade do |t|
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
有什么想法吗?提前致谢
在 github 存储库 https://github.com/lynndylanhurley/devise_token_auth/issues/597 上查看有关覆盖 devise_token_auth
gem 上的渲染方法的问题讨论。
在您的 User
模型上尝试以下代码,这样您就可以使用自定义序列化程序而不是默认序列化程序:
def token_validation_response
UserSerializer.root = false
UserSerializer.new(self).as_json
end