Rails:未定义的方法text_field_tag

发布于 2024-11-19 04:29:51 字数 573 浏览 4 评论 0原文

如果我使用 text_field,我的 ERB 文件工作正常,但如果我切换到 text_field_tag,我会收到此错误:

undefined method `text_field_tag' for #<ActionView::Helpers::FormBuilder:0x00000001f6fd50>

这是有效的代码:

<%= f.text_field mystring %>

以及无效的代码:

<%= f.text_field_tag mystring %>

text_field_tag已记录。如何让它发挥作用?我需要 require 或其他东西吗?

My ERB file works fine if I use text_field, but if I switch to text_field_tag I receive this error:

undefined method `text_field_tag' for #<ActionView::Helpers::FormBuilder:0x00000001f6fd50>

Here is the code that works:

<%= f.text_field mystring %>

And the code that does not work:

<%= f.text_field_tag mystring %>

text_field_tag is documented. How to make it work? Do I need a require or something?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

傾旎 2024-11-26 04:29:51

供您参考,text_field_tag 来自 ActionView::Helpers::FormTagHelper,其中指出:

提供了多种方法
创建不依赖的表单标签
在分配给的 Active Record 对象上
像 FormHelper 一样的模板。
相反,您提供姓名和
手动值。

由于这是一个不依赖于活动记录对象的帮助器,因此您无法为“f”对象调用此方法。这是一个辅助方法,应该像这样调用:

<%= text_field_tag "whatever you want to write" %>

For your information, text_field_tag is from ActionView::Helpers::FormTagHelper, which states :

Provides a number of methods for
creating form tags that doesn’t rely
on an Active Record object assigned to
the template like FormHelper does.
Instead, you provide the names and
values manually.

Since this is a helper that does not rely on an active record object, you cannot call this method for the "f" object. It's a a helper method that should be called like this :

<%= text_field_tag "whatever you want to write" %>
晚风撩人 2024-11-26 04:29:51

需要删除f:

<%= text_field_tag mystring %>

我猜text_field_tag不依赖于form_for。

Needed to remove f:

<%= text_field_tag mystring %>

I guess text_field_tag does not rely on the form_for.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文