我已经建立了一个使用Devise插件的安全登录的博客,它工作得很好。我打算在注册时添加一个额外的‘用户名’字段,然后文章帖子将显示此信息。我如何做到这一点,以便用户名进入数据库-任何代码帮助将不胜感激?
用户名需要是唯一的,但我将在稍后讨论这一点。
发布于 2011-05-13 01:51:01
作为设计精巧的wiki sez:
创建迁移
rails generate migration add_username_to_users username:string运行迁移
rake db:migrate修改用户模型并将用户名添加到attr_accessible
attr_accessible :username更多信息here
为了唯一性,您可以只对用户模型进行验证
希望这能有所帮助!
发布于 2011-05-22 22:58:05
好的,你在同一个主题中有两个问题。
第一个问题已经回答了,您可以按照以下步骤操作:Add custom fields to devise
那么对于您的下一个问题:问题不是用户的问题,而是@article的问题,因为这个变量是nil。所以Rails找不到与nil相关的User。
你应该发布你的控制器和你的_article视图,这样我就可以提供进一步的帮助。
我也不明白你说的是什么意思:
我将对象从' email‘更改为'username’,以阻止它在文章中显示提交者的电子邮件地址
..You可以选择您想要显示的任何内容,而无需替换任何内容。如果想要显示用户的用户名,只需执行user.username
发布于 2011-05-23 15:50:09
belongs_to :user中添加article.rb和has_many :articles到您的user.rbcurrent_user.create_article或authenticate_user!用于:create操作的before_filter before_filter :authenticate_user!,only => :only => :new,:create,:edit,:update,:destroy参考:http://guides.rubyonrails.org/association_basics.html
https://stackoverflow.com/questions/5981935
复制相似问题