Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.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_Model View Controller_Design Patterns - Fatal编程技术网

Ruby on rails 如何确定操作属于哪个控制器?

Ruby on rails 如何确定操作属于哪个控制器?,ruby-on-rails,model-view-controller,design-patterns,Ruby On Rails,Model View Controller,Design Patterns,我有两个模型:发布有许多元素,元素属于发布 我希望定义的操作将所有元素(制作所有元素的副本)从一个版本导入到另一个版本 如何确定此操作是属于releases控制器上的成员操作,还是属于elements控制器上的集合操作?我会将其放在releases控制器上。现在,如果我能弄明白为什么我会这么做 我能说的最好的一点是,由于它总是在发布的所有元素上运行,而不是在单个或特定的元素子集上运行,因此它似乎是一个发布操作,而不是元素操作。我会将它放入元素控制器中。您所做的操作是针对元素的,而不是针对发行版的

我有两个模型:发布有许多元素,元素属于发布

我希望定义的操作将所有元素(制作所有元素的副本)从一个版本导入到另一个版本


如何确定此操作是属于releases控制器上的成员操作,还是属于elements控制器上的集合操作?

我会将其放在releases控制器上。现在,如果我能弄明白为什么我会这么做


我能说的最好的一点是,由于它总是在发布的所有元素上运行,而不是在单个或特定的元素子集上运行,因此它似乎是一个发布操作,而不是元素操作。

我会将它放入元素控制器中。您所做的操作是针对元素的,而不是针对发行版的。我想这会更准确地区分您的顾虑。

谢谢您的观点。将来可能需要对元素子集进行操作。这会改变你的答案吗?我想我还是倾向于把它放在释放控制器上。我想在这种情况下我会把它移到元素控制器。在这个方向上给我的提示是,被修改的实际数据(大概)存储在元素中,而不是版本中。