bde*_*vic 2 ruby variables scope ruby-on-rails models
嘿Rails新手在这里.
我以前在我的一个控制器中有很多东西.有人告诉我,拥有"胖模型和瘦控制器"的好习惯所以我正在将一些东西转移到模型上.
在我的控制器的show方法中,我曾经有一些@变量,我将在我的视图中使用.现在我在模型中的方法中有这些变量.我仍然可以访问我的观点吗?如果是这样,我必须做出任何调整吗?
谢谢
您必须在控制器中创建模型的实例作为@变量.然后,您可以从视图内部调用方法.
例如,想象一下你曾经在你的控制器中拥有一些长长的逻辑,这些逻辑计算了客户最终的信用评分
@credit_score = credit_score
Run Code Online (Sandbox Code Playgroud)
现在,您已将其移至模型credit_score
上的方法中Customer
.
你现在只需要
@customer = Customer.find...
Run Code Online (Sandbox Code Playgroud)
在控制器中
你可以<%= @customer.credit_score %>
在视图中使用.
这就是人们对脂肪模型和瘦控制器的意思.如果您想要更多建议,那么最好使用您应用中的一些细节更新问题.