【问题标题】:simple_form text inputsimple_form 文本输入
【发布时间】:2012-03-12 00:46:21
【问题描述】:

我正在切换我的应用程序以使用simple_form,但我对如何显示文本输入有点困惑。例如,当我执行以下操作时:

f.input :foobar # <textarea name = "model[foobar]"></textarea>

我得到一个文本区域,而不是输入带有一种文本的输入。如何强制 simple_form 输出文本输入?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 simple-form


    【解决方案1】:

    发生这种情况是因为该字段是数据库中的 text 列,而不是 string/varchar/等,您可以像这样覆盖默认值:

    f.input :foobar, :as => :string
    

    您可以在“可用的映射/输入”下阅读simple_form readme 中的所有映射。

    【讨论】:

    • 感谢您的信息。我希望那是在自述文件中。自述文件甚至根本没有提到“textarea”或“as::string”选项。
    【解决方案2】:

    我会更新这个问题的答案,因为使用 simple_form 的新方法是这样的:

    f.input :foobar, as: :text
    

    如您所见,使用“as::text”将使用 text_area 字段,但如果您想修改行数和列数,您应该这样做:

    f.input :foobar, as: :text, input_html: {rows: 10, cols: 10}
    

    您可以在此处查看 gem 的文档:

    https://github.com/plataformatec/simple_form

    【讨论】:

    • 您可以从 hashrockets 切换到符号分配并拥有f.input :foobar, as: :text, input_html: {rows: 10, cols: 10}
    • 它要求输入[type="text"]。
    猜你喜欢
    • 1970-01-01
    • 2014-01-02
    • 1970-01-01
    • 1970-01-01
    • 2014-10-14
    • 1970-01-01
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多