如何在类似应用程序的Fiverr中为Rails设计模型关系?

时间:2016-09-04 08:39:37

标签: ruby-on-rails database-design associations relational-database model-associations

我想在Rails中构建像Fiverr.com这样的Web应用程序,但不知道如何设计数据库模型关系。到目前为止,这是我的想法:

需要的模型:用户,工作,Coment,StarsReview,类别。对于每个模型,这是我认为必须呈现的属性:

User Attribute:        :name, :email, :image  
Job Attribute:         :title, :description, :price, user_id 
Comment Attribute:     :comment_content, :user_id, :job_id  
StarsReview Attribute: :user_id,  
Categories Attribute:  :category_name, :job_id

这是我如何设计数据库关系

class User < ActiveRecord::Base
  has_many :jobs, dependent: :destroy
  has_many :comments, dependent: :destroy
  has_many :stars_review, dependent: :destroy

class Job < ActiveRecord::Base
  has_many :comments, as: :commentable
  belongs_to :users
  belongs_to :categories

class Comment < ActiveRecord::Base
  belongs_to :commentable, polymorphic: true

class StarsReview < ActiveRecord::Base
 belongs_to :user

class Categories < ActiveRecord::Base
  has_many :jobs

我的问题:
数据模型关系是否高于构建像Fiverr.com这样的Web应用程序的正确方法?有没有关于如何改进的建议?

0 个答案:

没有答案