2017-09-20 8 views
-1

私のアプリケーションでは、3つの利用可能な会議時間のいずれかをユーザーが要求する必要があります。会議の時間が請求されているとき、私は二重の予約を避けるために後で来るすべてのユーザーのためにそれが見えなくなることを望みます。どのようにデータを構造化するという点でこれを行うのが最善でしょうか?Railsで簡単なステータスを管理する

は、ここに私の現在の考え方です:

私は3つのdatetime型の列があります。私は三つの追加の整数列を作成しました

call_option_1、call_option_2、およびcall_option_3:call_option_1_status、call_option_2_status、およびcall_option_3状況を。

私は本質的に2つのステータス、つまり請求されておらず、請求されているステータスのみが必要です。

CallOptionStatusというモデルを作成し、それらに2つのステータス名を付ける必要がありますか?

レールでこのような単純なステータスを処理するにはどうすればよいですか?

ありがとうございます! マイケル

答えて

0

状態が変わるデータがある場合は、Rails列挙型を使用する可能性があります。例:

#model: UserCallOption 
    user_id:integer, state:integer, date:datetime 


#define enum 
class UserCallOption < ActiveRecord::Base 
    enum status: [:claimed, :unclaimed] 
end 


option.status # => unclaimed 
option.claimed! # status changed to `claimed` 
option.status # => claimed 

この記事はあなたを助けるかもしれない:How do i specify and validate an enum in rails?

関連する問題