Rails 6 访问控制器中的辅助方法
Rails 6 access helper method in controller
应用程序必须与 API 和 link 通信。因此控制器尝试定义一个变量如下:
link = helper.link_to(I18n.t 'cart.check_cart_status', acqs_url)
然而在控制台中这个returns
NameError (undefined local variable or method `acqs_url' for main:Object)
当此方法 respects the definition in the API docs.
访问控制器中的助手在不同版本之间发生了很大变化。
Rails 6.1.3 中的上述语法有什么问题?还是调用 I18n 搞砸了?
您缺少围绕 I18n.t
参数的括号 - 它应该是 link_to(I18n.t('cart.check_cart_status'), acqs_url)
,否则 URL 将作为参数传递给 I18.t
方法,而不是link_to
方法。
此外,如果您尝试在 rails 控制台中测试作业,您应该这样称呼它:
helper.link_to(I18n.t('cart.check_cart_status'), app.acqs_url)
应用程序必须与 API 和 link 通信。因此控制器尝试定义一个变量如下:
link = helper.link_to(I18n.t 'cart.check_cart_status', acqs_url)
然而在控制台中这个returns
NameError (undefined local variable or method `acqs_url' for main:Object)
当此方法 respects the definition in the API docs.
访问控制器中的助手在不同版本之间发生了很大变化。 Rails 6.1.3 中的上述语法有什么问题?还是调用 I18n 搞砸了?
您缺少围绕 I18n.t
参数的括号 - 它应该是 link_to(I18n.t('cart.check_cart_status'), acqs_url)
,否则 URL 将作为参数传递给 I18.t
方法,而不是link_to
方法。
此外,如果您尝试在 rails 控制台中测试作业,您应该这样称呼它:
helper.link_to(I18n.t('cart.check_cart_status'), app.acqs_url)