0

我对 RoR 完全陌生,我想建立一个简单的网站,其中包含一堆问题,以及与每个问题相关的一堆答案。用户选择与每个问题相关联的一个答案,并且存在多个问题。然后,完成后,用户将单击提交按钮,我会将他们的数据存储到我的数据库中。

我无法弄清楚的是我应该如何存储我将定义自己的问题和答案?基于对数据库的一点经验,我认为我应该构建两个数据库,一个用于问题,一个用于与每个问题相关的答案。我应该怎么做,我该怎么做?

编辑:我的意思是两张桌子,对不起。

4

2 回答 2

2

一分贝就够了。您应该有 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
于 2013-10-12T22:56:38.183 回答
0

除了 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”命令即可迁移它们。

于 2013-10-13T11:56:43.483 回答