gpt4 book ai didi

ruby-on-rails - form_for 和 form_tag 的区别?

转载 作者:行者123 更新时间:2023-12-04 00:36:16 25 4
gpt4 key购买 nike

我用过 this gem在我的应用程序中,但我不确定 gem 的不同实现选项之间的区别:

  • form_for
  • 带块的 form_tag
  • form_tag 无块

  • 任何人都可以澄清吗?我明白 form_for当您希望与模型交互时使用,但其他两个呢?

    最佳答案

    这些差异是微妙的,但很重要。 form_for是一个更高级的工具,它可以生成一个用于生成表单元素的对象:

    <% form_for(@foo) do |form| %>
    <%= form.text_field(:bar) %>
    <% end %>
    form_tag方法要原始得多,只发出一个标签。如果你想把东西放在 <form>里面发出的标签,你把东西放在块里:
    <% form_tag do %>
    <%= text_field_tag(:bar, 'bar_value') %>
    <% end %>

    请注意 form_for方法处理从模型中获取值,并且至少会尝试将表单路由到适当的操作。与 form_tag你对一切负责,因为它不对你正在做的事情做任何假设。

    关于ruby-on-rails - form_for 和 form_tag 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9540291/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com