gpt4 book ai didi

ruby-on-rails - rails : NameError: uninitialized constant OrderItem

转载 作者:数据小太阳 更新时间:2023-10-29 08:31:14 27 4
gpt4 key购买 nike

models/order_item.rb

class OrderItem < ActiveRecord::Base    
belongs_to :item
belongs_to :order
belongs_to :user
end

models/order.rb

 class Order < ActiveRecord::Base   
has_many :order_item
end

现在,我使用 rails console 测试它们。当我输入 OrderItem 时,它抛出了

NameError: uninitialized constant OrderItem

更新

我是在 rails console 中完成的

2.1.3 :021 >   reload!
Reloading...
=> true
2.1.3 :022 > Order
=> Order(id: integer, user_id: integer, created_at: datetime, updated_at: datetime, status: integer)
2.1.3 :023 > Item
=> Item(id: integer, status: integer, name: string, price: integer, descript: text, created_at: datetime, updated_at: datetime, cover_file_name: string, cover_content_type: string, cover_file_size: integer, cover_updated_at: datetime, cate_id: integer)
2.1.3 :024 > User
=> User(id: integer, email: string, encrypted_password: string, created_at: datetime, updated_at: datetime)
2.1.3 :025 > OrderItem
NameError: uninitialized constant OrderItem
from (irb):25
from /Users/Coda/.rvm/gems/ruby-2.1.3@rails416/gems/railties-4.2.3/lib/rails/commands/console.rb:110:in `start'
from /Users/Coda/.rvm/gems/ruby-2.1.3@rails416/gems/railties-4.2.3/lib/rails/commands/console.rb:9:in `start'
from /Users/Coda/.rvm/gems/ruby-2.1.3@rails416/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:68:in `console'
from /Users/Coda/.rvm/gems/ruby-2.1.3@rails416/gems/railties-4.2.3/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
from /Users/Coda/.rvm/gems/ruby-2.1.3@rails416/gems/railties-4.2.3/lib/rails/commands.rb:17:in `<top (required)>'
from /Users/Coda/Desktop/code/ruby_pra/shop/bin/rails:8:in `<top (required)>'
from /Users/Coda/.rvm/rubies/ruby-2.1.3/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /Users/Coda/.rvm/rubies/ruby-2.1.3/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from -e:1:in `<main>'

最佳答案

NameError: uninitialized constant OrderItem

has_many关联名称 应该是复数,所以更改 has_many :order_itemhas_many :order_items in order.rb

#order.rb
class Order < ActiveRecord::Base
has_many :order_items #plural
end

更新:

查看您在 github 上的代码,order_item.rb 之间有一个空格 即,(order_item .rb) 在文件名(app/models/order_item .rb ).将其更改为 order_item.rb

关于ruby-on-rails - rails : NameError: uninitialized constant OrderItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32818606/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com