Ruby on Rails - 在哪里放置这些辅助类型方法

时间:2014-05-05 05:22:12

标签: ruby ruby-on-rails-4 module helpers

我一直在寻找最好的做法,在哪里放一些辅助方法,为我做所有这些计算/排序但是我还没有找到确定的答案,并且想知道是否有人有一些好处洞察力。

基本上我有一个action方法,它接受一个字符串用户输入,找到与该字符串相似的单词,进行一堆字符串操作,然后命令返回一个数组。

我不知道我是否应该在/lib中设置模块,制作一个控制器辅助模块,......我在哪里寻找反馈!

但基本上我只想:

  1. 将一个单词发布到控制器操作方法
  2. 调用辅助方法或对控制器外部的字执行某些逻辑
  3. 有那个帮助方法或逻辑将在哪里,给我回复结果

2 个答案:

答案 0 :(得分:3)

只需将该方法放在应用程序助手中,无论从哪里调用它都会在处理逻辑后返回结果值,你不应该过于复杂,所以好的旧应用程序助手是放置常用方法的好地方在视图和控制器中

答案 1 :(得分:1)

我不会从您的控制器调用辅助方法。我个人会使用模块/普通旧ruby对象或关注来处理计算。控制器将对象存储在实例变量中,以便可以通过您的视图使用它。

另外值得注意的是装饰者,你应该看看draper:https://github.com/drapergem/draper