0

これが私が直面しているプログラミングの課題です。私はこれが初めてです...

私はこれを Rails のやり方でエレガントなコードで行い、その過程で何かを学びたいと思っています。

私のアプリでは、プレーヤーはアクションを追跡します (30 分から始まる 25 分間のフォーカス)。action#new フォームは最初に読み込まれますが、25 分が経過するまで保存されません。最後の 2 分間はふりかえりで、「どうだった?」という必須の質問が含まれています。

ここで、Insights テーブルを追加したいと考えています。私は、より大きな「新しいアクション」フォームに溶け込む、別の小さな「新しい洞察」フォームを描いています。いつでもインサイトを保存したいと思います。

また、インサイトをその特定のアクションに関連付けたいと思っています...アクションがまだ作成されておらず、それが持つIDがわからない場合でも(他の誰かが自分のアクションを記録する前に記録する可能性があります)。インサイトが作成されたがアクションが失敗した場合、何をすべきかまだわかりません...アクションのないインサイトを許可できます。

これを実装するにはどうすればよいですか?一時変数?それはどこに行くのでしょうか?

繰り返しますが、私はこれにまったく慣れていません。サポートに感謝します。

ミハイ TheActionGame.com

4

2 に答える 2

0

アクション「insight_ids」に列を配列として追加し、それを has_and_belongs_to_many として実装できます。次に、洞察が得られたら、洞察の ID を配列に記録します。

于 2013-05-05T13:15:40.757 に答える
0

アクションが何を表しているかは確かですが、時間ベースの原則がある場合でも、以前にアクションを保存することを妨げるものは何もありません (ブラウザーベースのアプリケーションの場合、25 分は多くの時間であり、その間に多くの更新や接続障害など、悪いことが起こる可能性があります)。

私のアドバイスは、すぐにアクションを作成 (保存) して、インサイトをアクションにリンクできるようにすることです。必要に応じて、「新規」(基本ステータス)、「確認済み」などの「ステータス」列をアクションに追加します。

その後、「確認済み」のアクションのみで作業し、最終的に「新しい」アクションを定期的に削除できます (しきい値が 25 で、30 分以上経過したすべてのアクションと同様)。

これが理にかなっていることを願っています (とにかく、Rails よりも多くのデザイン)。

于 2013-05-05T13:16:38.747 に答える