rails app - mongoid 不插入新字段
rails app - mongoid does not insert a new field
我刚开始使用 rails-api 和 mongoDB(rails 中的 gem mongoid)在应用程序上创建。
我是这样创建模型的:
class User
include Mongoid::Document
include Mongoid::Timestamps
embeds_many :language
accepts_nested_attributes_for :language
field :name, type: String
field :lastname, type: String
field :mail, type: String
field :passwd, type: String
field :auth_token, type: String
end
我想在我的模型中添加另一个字段。
所以在我的模型的最后我添加了这个:
field :slug, type: String
但是当我插入一个新文档时,mongoid 没有检测到新字段并且 return 为空。
我尝试做 rake:migration 但对 mongodb 没用,我找不到问题所在。你能帮帮我吗?
此致
很可能您没有将该新字段添加到强参数白名单中。
查看您的控制器并找到如下所示的一行:
params.require(:user).permit(:name, ...)
像这样添加slug
:
params.require(:user).permit(:name, ..., :slug)
我刚开始使用 rails-api 和 mongoDB(rails 中的 gem mongoid)在应用程序上创建。
我是这样创建模型的:
class User
include Mongoid::Document
include Mongoid::Timestamps
embeds_many :language
accepts_nested_attributes_for :language
field :name, type: String
field :lastname, type: String
field :mail, type: String
field :passwd, type: String
field :auth_token, type: String
end
我想在我的模型中添加另一个字段。
所以在我的模型的最后我添加了这个:
field :slug, type: String
但是当我插入一个新文档时,mongoid 没有检测到新字段并且 return 为空。
我尝试做 rake:migration 但对 mongodb 没用,我找不到问题所在。你能帮帮我吗?
此致
很可能您没有将该新字段添加到强参数白名单中。
查看您的控制器并找到如下所示的一行:
params.require(:user).permit(:name, ...)
像这样添加slug
:
params.require(:user).permit(:name, ..., :slug)