相关疑难解决方法(0)

ActiveRecord的:: UnknownAttributeError?

我只是将应用程序推送到生产Heroku环境.

基本上有一个Bus模型,它有一个seats属性

class Bus < ActiveRecord::Base
  attr_accessible :seats, # other attributes
end
Run Code Online (Sandbox Code Playgroud)

现在我有一个JavaScript前端,POST的JSON用于新的总线buses#create操作.

我尝试创建总线时,ActiveRecord一直遇到错误:

: POST www.busables.com/buses dyno=web.1 queue=0 wait=5ms service=65ms status=500 bytes=728
: 
: ActiveRecord::UnknownAttributeError (unknown attribute: seats):
:   app/controllers/buses_controller.rb:31:in `new'
:   app/controllers/buses_controller.rb:31:in `create'
Run Code Online (Sandbox Code Playgroud)

参数正在达到控制器动作.我可以记录它们,然后我得到了以下内容:

The bus parameters received: {"seats"=>"24", "departure_time(1i)"=>"2011", "departure_time(2i)"=>"11", "departure_time(3i)"=>"25", "departure_time(4i)"=>"16", "departure_time(5i)"=>"15", "route_attributes"=>{"summary"=>"N51", "beginning_address"=>"A place", "terminal_address"=>"Another place", "distance"=>26362, "duration"=>1753}}
Run Code Online (Sandbox Code Playgroud)

我检查了Bus表实际上有seats列,它确实(我在Heroku控制台中运行它):

> Bus.column_names
=> ["id", "name", "route_id", "created_at", "updated_at", "price", "departure_time", "trip_distance", "trip_duration", "seats"]
Run Code Online (Sandbox Code Playgroud)

当然,我已经尝试迁移和加载数据库模式.我已经检查过它attr_accessible :seats …

activerecord ruby-on-rails heroku ruby-on-rails-3 ruby-on-rails-3.1

12
推荐指数
1
解决办法
7460
查看次数

的ActiveRecord :: UnknownAttributeError

我正在尝试用一些字段创建酒店,其中一个字段是照片,我想使用带有carrierwave和nested_form的多个文件上传.我找到了这篇文章 并得到了一些结果.

当我在/ hotels/new,填写字段,选择照片并按提交时,在HotelsController#中 获取ActiveRecord :: UnknownAttributeError会创建未知属性:attachable_type.安慰

Started POST "/hotels" for 127.0.0.1 at 2013-09-27 17:35:18 +0300
Processing by HotelsController#create as HTML
  Parameters: {"utf8"=>"?", "authenticity_token"=>"+1T2tuygSnj8unOKkXkRWI4L7KvDE
9PPHrqvag7KmIQ=", "hotel"=>{"title"=>"dsa", "address"=>"asd", "star_rating"=>"2"
, "breakfast"=>"Not include", "price_for_room"=>"sadas", "room_description"=>"Gr
eat room", "attachments_attributes"=>{"1380289954031"=>{"file"=>#<ActionDispatch
::Http::UploadedFile:0xa5d546c @original_filename="11374.jpg", @content_type="im
age/jpeg", @headers="Content-Disposition: form-data; name=\"hotel[attachments_at
tributes][1380289954031][file]\"; filename=\"11374.jpg\"\r\nContent-Type: image/
jpeg\r\n", @tempfile=#<File:/tmp/RackMultipart20130927-7077-50zkol>>, "_destroy"
=>"false"}, "1380289972216"=>{"file"=>#<ActionDispatch::Http::UploadedFile:0xa5d
53a4 @original_filename="357175.jpg", @content_type="image/jpeg", @headers="Cont
ent-Disposition: form-data; name=\"hotel[attachments_attributes][1380289972216][
file]\"; filename=\"357175.jpg\"\r\nContent-Type: image/jpeg\r\n", @tempfile=#<F
ile:/tmp/RackMultipart20130927-7077-dlkmwk>>, "_destroy"=>"false"}}}, "commit"=>
"Done"}
Completed 500 Internal Server Error in 109ms

ActiveRecord::UnknownAttributeError …
Run Code Online (Sandbox Code Playgroud)

activerecord ruby-on-rails nested-forms carrierwave

5
推荐指数
2
解决办法
1万
查看次数