Rails Rails 无法 AddXxToXx

luoluo · 2013年03月21日 · 最后由 luoluo 回复于 2013年03月21日 · 2350 次阅读

我先执行了rails new myapp rails generate scafflod ticket name:string rake db:migrate 这是执行rails server可以正常访问并创建对象。 现在我想增加 ticket 的项目,执行rails generate migration AddEmailToTickets email:string rake db:migrate 修改 view 目录下的访问文件,在访问时,却出现了一下的错误:

ActiveModel::MassAssignmentSecurity::Error in TicketsController#create

Can't mass-assign protected attributes: email Rails.root: /home/lo/try/rails/ff

Application Trace | Framework Trace | Full Trace app/controllers/tickets_controller.rb:43:in `new' app/controllers/tickets_controller.rb:43:in `create' Request

Parameters:

{"utf8"=>"✓", "authenticity_token"=>"xFsJUy4zWJbLU3jxOaimoJHc8D0e8pR2N88RS5DEo1E=", "ticket"=>{"name"=>"asf", "address"=>"af", "price"=>"2323", "email"=>"wqer"}, "commit"=>"Create Ticket"} Show session dump

Show env dump

Response

Headers:

总是无法访问,不知是不是数据迁移没有成功还是怎么的,求解?

已经搜过了的,《Head First 的实例练习》。我想知道数据迁移出错了么?

查查 MassAssignmentSecurity 是怎么回事,你就明白了

搜过了还没找到原因么。。。

是不是没在 model 里加 attr_accessible

另,linux 的中键粘贴在 ruby-china 上不能用,不知怎么回事

谢谢楼上的各位,解决了的。在xx/models/xx.rbattr_accessible :后添加就可以了。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号