新手在这里开发开发人员。
我在尝试在新的rails项目中设置一些非常简单的数据库关联时遇到问题。
在我的数据库中,我有两个表,一个叫做“Games”,另一个叫做“Onlines”。这就是现在的内容
Game.first
#<Game id: 1, name: "Game 1", description: "This is a cool game", url: "http://domain.com">
Online.first
#<Online id: 1, game_id: 1, now: 222>
我正在尝试建立一个简单的关联,这样我就可以通过做类似的事情来吸引在线用户数量。
Game.find(1).onlines.now
在我的game.rb和online.rb模型中我有
belongs_to :online
和
belongs_to :games
相应。
当我尝试在rails控制台中运行Game.find(1).onlines.now时,我收到以下错误。
NoMethodError: undefined method `onlines' for #<Game:0x00000101654300>
from /Users/Jon/.rvm/gems/ruby-1.9.2-p180@rails3tutorial/gems/activemodel-3.0.6/lib/active_model/attribute_methods.rb:367:in `method_missing'
from /Users/Jon/.rvm/gems/ruby-1.9.2-p180@rails3tutorial/gems/activerecord-3.0.6/lib/active_record/attribute_methods.rb:46:in `method_missing'
from (irb):5
from /Users/Jon/.rvm/gems/ruby-1.9.2-p180@rails3tutorial/gems/railties-3.0.6/lib/rails/commands/console.rb:44:in `start'
from /Users/Jon/.rvm/gems/ruby-1.9.2-p180@rails3tutorial/gems/railties-3.0.6/lib/rails/commands/console.rb:8:in `start'
from /Users/Jon/.rvm/gems/ruby-1.9.2-p180@rails3tutorial/gems/railties-3.0.6/lib/rails/commands.rb:23:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
我在这里错过了一些非常明显的东西吗?我已经尝试了所有我能想到的东西。
答案 0 :(得分:4)
你应该
has_many :onlines
在您的游戏模型中,而不是belongs_to
。