2011-11-10 9 views
3

ユーザーはアンケートを作成できます。アンケートの質問と質問には、回答オプション(つまり、多項選択質問)があります。Railsアプリケーションでレコードの「テンプレート」を作成するには?

私がしたいことは、アンケートテンプレートを作成することです。ユーザーは、ボタンをクリックするだけで、事前に設定された質問と回答オプションで新しいアンケートを作成できます。

既に機能しているアプリがありますので、それは問題ではありません。我々はすでに調査を複製/複製/複製する能力をすでに持っています。また、質問ではありません。

質問は、アプリのユーザーがアクセスできる定義済みのアンケート/質問/回答オプションをどのように作成するのですか?

は、私はちょうど Survey.create({:questions => {:answers =>{}})?それとも私は理にかなっているのでしょうか?

のことを考えていないよ他のいくつかの方法を実行しtemplatesテーブル(とのいくつかの並べ替えでは、ハッシュなど、すべての設定を保存しますか?どれより明確化が必要なのですか?

答えて

2

is_templateというフラグ(ブール値)をサーベイモデルに追加しないでください。通常のアンケートを作成してフラグを高く設定すると、このフラグが設定されたすべてのアンケートが表示されますコピーしてください。

3

サーベイモデルとサーベイテンプレートを区別するために、サーベイモデルのテーブル継承。 この方法を使用すると、認証をよりうまく統合することもできます。

RailsでSTIを使用する場合、モデルには:type属性が必要であり、Railsはクラス名を各レコードの属性に格納します。

参照:

http://code.alexreisner.com/articles/single-table-inheritance-in-rails.html

関連する問題