[英]How to model a user that can be a host, customer, or both? Rails
我正在嘗試將諸如airbnb之類的內容作為輔助項目進行重建,並且我想知道如何對可以是Host
或Customer
或兩者的User
實體進行建模。 一個人怎么表示呢?
多態性的問題在於, User
只能是Host
或Customer
而不能同時是兩者。
通過兩個一對一的關系來做到這一點的最好方法是嗎?
我要解決此問題的方法是采用三種模型: User
, Rental
,(房屋出租)和RentalBooking
(用戶進行的預訂)
一個User
有許多Rental
,並且Rental
“主機”將由擁有該Rental
(租賃user_id)確定。 RentalBooking
將具有一個rental_id
和一個user_id
(用戶ID為客戶)。
就個人而言,我不必讓用戶擔任Host
或Customer
的角色,但是此信息可以輕松地在每個預訂或租賃帖子中顯示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.