我对 RoR 完全陌生,我想建立一个简单的网站,其中包含一堆问题,以及与每个问题相关的一堆答案。用户选择与每个问题相关联的一个答案,并且存在多个问题。然后,完成后,用户将单击提交按钮,我会将他们的数据存储到我的数据库中。
我无法弄清楚的是我应该如何存储我将定义自己的问题和答案?基于对数据库的一点经验,我认为我应该构建两个数据库,一个用于问题,一个用于与每个问题相关的答案。我应该怎么做,我该怎么做?
编辑:我的意思是两张桌子,对不起。
我对 RoR 完全陌生,我想建立一个简单的网站,其中包含一堆问题,以及与每个问题相关的一堆答案。用户选择与每个问题相关联的一个答案,并且存在多个问题。然后,完成后,用户将单击提交按钮,我会将他们的数据存储到我的数据库中。
我无法弄清楚的是我应该如何存储我将定义自己的问题和答案?基于对数据库的一点经验,我认为我应该构建两个数据库,一个用于问题,一个用于与每个问题相关的答案。我应该怎么做,我该怎么做?
编辑:我的意思是两张桌子,对不起。
一分贝就够了。您应该有 2 个表格(问题和答案):
class Answer < ActiveRecord::Base
attr_accessible :body
belongs_to :question
end
class Question < ActiveRecord::Base
attr_accessible :body
has_many :answers
end
这是假设每个问题都有许多可能的答案
可以生成模型+迁移:
rails g model Question body:string
rails g model Answer body:string question:references
除了 Igor 的回答,您还需要使用这些列设置 2 个模型和表格(问题和答案):
#rails generate migration AddQuestionsAndAnswersDatabases
class AddQuestionsAndAnswersDatabases < ActiveRecord::Migration
def change
create_table :questions do |t| #-> creates questions table
t.string :body
t.timestamps
end
create_table :answers do |t| #-> creates answers table
t.integer :question_id
t.string :body
t.timestamps
end
end
end
这将为您创建数据库,然后您只需运行“ rake db:migrate
”命令即可迁移它们。