我们知道Rails中的helper方法(比如link_to)默认只能在模板(Template)中使用,如果想要在控制台中调用,可以加前缀helper:
helper.link_to #或者 ApplicationController.helpers.link_to
虽然比较少见,不过如果真的要在Controller或Model中呼叫Helper,则也可以用ApplicationController.helpers前缀调用helper方法.
接下来,如果你实际想写个链接试一下就会报错:
helper.link_to("staff",staff_path(Staff.first)) #报错如下: NoMethodError: undefined method `staff_path' for main:Object
这是因为staff_path需要加上app前缀调用:
helper.link_to("staff",app.staff_path(Staff.first)) #输出 "staff"
你可以添加任意相关属性:
helper.link_to("staff",app.staff_path(Staff.first),target:"_blank") "staff"