Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.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 同步工作的工人/作业/订单的模型关系_Ruby On Rails_Ruby_Postgresql - Fatal编程技术网

Ruby on rails 同步工作的工人/作业/订单的模型关系

Ruby on rails 同步工作的工人/作业/订单的模型关系,ruby-on-rails,ruby,postgresql,Ruby On Rails,Ruby,Postgresql,我正试图让客户下订单,当他们下订单时,在订单数据库条目中将出现状态:未完成 工人可以申请其中一个订单s并开始一项工作。当员工接受了订单并将其作为作业时,我试图制定订单状态状态:inprogress和作业状态时,当员工完成作业时,订单状态应为是状态:已完成和作业状态状态:已完成 我想知道,当一名员工在PostgreSQL数据库中创建作业时,我是否以正确的方式设置了模型关系,以便能够更改订单和作业的状态 我的模型设置如下: worker.rb devise :database_authenticat

我正试图让客户下
订单
,当他们下
订单
时,在
订单
数据库条目中将出现
状态:未完成

工人
可以申请其中一个
订单
s并开始一项
工作
。当
员工
接受了
订单
并将其作为
作业
时,我试图制定
订单
状态状态:inprogress和
作业
状态时,当
员工
完成
作业
时,
订单
状态应为是
状态:已完成
作业
状态
状态:已完成

我想知道,当一名
员工在PostgreSQL数据库中创建
作业时,我是否以正确的方式设置了模型关系,以便能够更改
订单
作业
状态

我的模型设置如下:

worker.rb

devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable

has_many :jobs
order.rb

belongs_to :job
job.rb

 belongs_to :worker
 has_one :worker

您可以通过使用或来实现此类功能。尤其其思想是当您更新记录数据时,一些代码会执行


或者您可以使用状态机gems来管理您的状态。例如,具有在状态更改时执行的内置回调。

您可以通过使用或来实现此类功能。尤其其思想是当您更新记录数据时,一些代码会执行


或者您可以使用状态机gems来管理您的状态。例如,具有在状态更改时执行的内置回调。

A
Job
属于:worker
而不是
user
,因为此问题中没有
user
模型。您可能还需要在数据库中更改它。@spickermann谢谢您指出这一点!为了清楚起见,我在问题中将它从一个用户改为另一个工人,因为在这个问题中没有
用户
模型,所以
作业
属于:工人
,而不是
用户
。您可能还需要在数据库中更改它。@spickermann谢谢您指出这一点!为了澄清问题,我将其从用户更改为工作者,但您认为我正确设置了模型关系吗?但您认为我正确设置了模型关系吗?