0

アプリでは、ユーザーが質問に答えます。ログインするたびに、3つの未回答の質問が表示されます。ユーザーが質問をスキップ(または回答!)すると、別の未回答の質問が表示されます。

未回答の質問を検索し、未回答の質問のすべてのIDが表示されたCookieと、Webページに表示されていない質問のIDが表示された別のCookieを作成することを考えていました。

しかし、ユーザーが質問をスキップした場合にCookie間の値の交換を処理する方法を理解するのに苦労しています

また、表示された質問をデータベースに保存することも考えました。特定の値は、表示されているがまだ回答されていないことを示します。しかし、それはおそらく非常にデータベースを集中的に使用するでしょう。

私はコードを教えてくれる人を探していません。これを行うための最も適切な方法を教えてください。自分でコードを記述します。

Railsに取り組んでいます。

4

2 に答える 2

1

簡単にするためにデータベースに保存しておきます。質問と回答の表があります。これがスケルトンコードの一部です...

user_id
question_id
answer_status

class Answer < ActiveRecord::Base
  belongs_to :user
  scope :seen_but_unanswered, where(:answer_status => 'seen')
  scope :answered, where(:answer_status => 'answered')
end

class User < ActiveRecord::Base
  has_many :answers

  def unseen_questions
    ...
  end


end

その後、次のリクエストを行うことができます。

@user.answers
@user.unseen_questions
@user.answers.seen_but_unanswered
@user.answers.answered
于 2012-08-02T16:51:03.970 に答える
0

このすべての情報をハッシュに保存してセッションを使用しますか?ハッシュが信じられないほど大きくない限り、これは問題ないはずです。

session[:unanswered] = unanswered_hash unless session[:unanswered].present?

これがあなたがやりたかったことすべてをカバーしているかどうかは完全にはわかりません。

于 2012-08-02T16:19:07.527 に答える