Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 描述rails中租赁流程的多个模型_Ruby On Rails - Fatal编程技术网

Ruby on rails 描述rails中租赁流程的多个模型

Ruby on rails 描述rails中租赁流程的多个模型,ruby-on-rails,Ruby On Rails,我有一个双边租赁市场,预订情况用一个模型描述。它存储从承租人请求、所有者接受/拒绝到预订完成等所有状态 create_table "bookings" do |t| # Storing booking time info t.datetime "pickup_datetime" t.datetime "return_datetime" # create a snapshots of the state o

我有一个双边租赁市场,预订情况用一个模型描述。它存储从承租人请求、所有者接受/拒绝到预订完成等所有状态

create_table "bookings" do |t|
   # Storing booking time info
   t.datetime "pickup_datetime"
   t.datetime "return_datetime"
   
   # create a snapshots of the state of product at time of rental requests submission
   t.integer  "hourly_rate"
   t.integer  "weekly_rate"
   t.integer  "daily_rate"

   # storing the states
   t.datetime "requested_at"
   t.datetime "accepted_at"
   t.datetime "rejected_at"
   t.datetime "cancelled_at"
   t.datetime "created_at"
   t.datetime "updated_at"
   t.datetime "owner_reviewed_at"
   t.datetime "renter_reviewed_at"

   t.integer "renter_id"
   t.integer "product_id"

end
我发现它很笨拙,于是决定把它分成三种型号

rent::Intent
->承租人的预订意向。每个
意向
都有许多
请求
,第一个确认的
重新请求将成为
预订
intent
存储付款状态和租赁时间信息,因此不会在每个
请求中重复,承租人只需支付一次押金

租赁::请求
->请求对象针对不同的产品,每个产品都有其状态:例如取消、过期、接受、拒绝等

租赁::预订
->已确认的请求变为预订

因此,我知道我可以总结出与
所属的
有许多
等的积极关系。但是,我不确定如何在上述模型中描述流程。e、 g.当请求得到确认时,请求即成为预订


我想知道在处理这样的流程时,一般的方法是什么?

在所有者接受/拒绝之前,承租人可以多次请求预订同一产品?是的,例如,最多5次。并且请求属于一个意图,因此时间/定价信息保持一致。多个请求是导致一个预订还是多个预订?它导致一个预订,第一个得到确认/接受的请求将成为预订,意向中的其他请求将自动过期。建议您详细说明您的流程以及所有涉及的业务规则/约束。您的意图模型试图解决一个定义不明确的问题。