pm = article_params
pm[:article][:text].gsub!(/\r\n?/, "\n")
current_user.articles.build(pm)
或者
pm = article_params
pm[:article][:text] = pm[:article][:text].gsub(/\r\n?/, "\n")
current_user.articles.build(pm)
我都糊涂了 😄
current_user.articles.build(article_params[:article][:text].gsub!(/\r\n?/, "\n"))
或者
current_user.articles.build(article_params['article']['text'].gsub!(/\r\n?/, "\n"))
是把 request 里的 params 修改了,不是修改 permitted_params
。。
current_user.articles.build(article_params[:text].gsub!(/\r\n?/, "\n"))
还有可能就是 user_id 链接的那个 table 里根本没有 id 是 1 的 record
假设那些 code 在 params 里的 key 是 text,就用
article_params[:text].gsub!(/\r\n?/, "\n")
如果解决了的话请在 stackoverflow 上选一下,谢谢。
还有个可能就是 namespace 的问题
user_id 是这个 table 的 id 么?如果是的话就把user_id 1
这行删了试试。还是是另外一个 model 的 reference?
在 stack overflow 被我发现了,哈哈。在那里回答了。
这个错误是告诉你数据库必须有个 user_id column, 你创建的时候要有 user_id。
如果你要用 attributes_for 的话,可以修改为attributes_for(:user, user_id: 123)
或者直接去 user factory,把 user/user_id 加上。
permitted_params 里的 user key
看 log 里面这个 update/保存提交的是什么啊