我有before_action
方法:
def convert_duration_reminder
allowed_duration_units = %(hour day)
if allowed_duration_units.include? params[:store][:store_setting_attributes][:reminder_unit]
store_settings_params = params[:store][:store_setting_attributes]
@duration_reminder = store_settings_params[:reminder_duration].to_i.send(store_settings_params[:reminder_unit]).to_i / 3600
else
redirect_to store_settings_store_path(id: current_store.id)
end
end
我内心有一点逻辑。 @duration_reminder
用于update_attributes
。
它属于控制器吗?对我来说是的,因为我使用params并且我有一个重定向,方法很短(除了行长...)并且不会处理数据库中的任何数据。
此方法只需根据用户在视图中选择的内容(" 2小时"," 1天和#34;),以分钟为单位转换时间。
从书Rails 4 action开始写道:
■模型包含应用程序的域逻辑。这个逻辑 指示如何检索,验证或验证数据库中的记录 操纵。在Rails应用程序中,模型定义了代码 与数据库的表交互以检索和设置信息 在他们中。域逻辑还包括验证或 要对数据执行的特定操作。
■控制器与模型交互以收集要发送到视图的信息。他们是 用户和数据库之间的层。他们调用方法 模型类,它可以返回表示行的单个对象 这些对象的数据库或集合(数组)。控制器 然后通过实例使这些对象可用于视图 变量。控制器也用于权限检查,例如 确保只有具有特殊权限的用户才能执行 某些操作可以执行这些操作,而没有操作的用户可以执 许可不能。
def convert_duration_reminder
是否属于控制器?