我有一个Rails 4应用程序,它使用form_for构建基本Blog类型的表单,除了一件事之外,一切都按预期工作:我必须根据所选的提交按钮确定博客的发布状态用户提交表单时。这是我的HAML代码:
= form.submit 'Save as Draft', value: 'Draft', name: 'publish_state', class: 'button'
= form.submit 'Publish', value: 'Published', name: 'publish_state', class: 'button'
在此设置中,有两种不同的状态Published
和Draft
,两者都被视为数据库中的字符串。
我遇到的问题是,即使我指定按钮说'Save as Draft'
和'Publish'
,它们也只会根据其值显示'Draft'
和{分别为{1}}。我搜索过,只能找到如何指定值或文本,而不是分开两者。在Rails表单中有没有办法允许这个?或者,如果没有Rails形式,还有哪些其他方法有效?
===================
tl; dr - 如何在Rails表单中创建一个按钮,显示一个字符串并在单击时返回另一个字符串?
答案 0 :(得分:2)
您可以使用通用按钮作为提交按钮。
= form.button 'Save as Draft', value: 'Draft', name: 'publish_state', class: 'button', type: 'submit'
= form.button 'Publish', value: 'Published', name: 'publish_state', class: 'button', type: 'submit'