非CRUD控制器操作

tho*_*ner 5 model-view-controller ruby-on-rails

这可能看起来像一个n00b问题,但我试图打破我可能采用MVC的一些不良做法,所以我希望你能帮助我

所以,想象一下我想做一些像"上传CSV和解析它"这样的东西,我觉得把它放到CRUD模式中似乎不太明显......我没有与DB交互,所以我不需要添加或更新或删除,但我仍然希望能够从不同的视图以有意义的方式使用该操作.因此,只需一个名为"UploadCSV"的动作就可以了,并且可以通过诸如"/ data/uploadcsv"之类的URL访问它.

非常感谢您的想法!

汤姆

Mic*_*uso 1

听起来您正在谈论 RESTful 想法(具有称为索引、创建、新建、编辑、更新、销毁、显示的操作)。

在 MVC 中,您可以在很大程度上调用任何您想要的操作(所以,是的,如果您愿意,您可以将其称为 uploadcsv)。如果您希望它符合 RESTful 原则,您可能需要考虑该操作正在做什么(例如,数据上传本质上是创建或更新功能)并使用 RESTful 操作名称之一对其进行命名。