ruby-on-rails - Rails 表单提交操作类似于 link_to
问题描述
所以最终我想要做的是让表单分成两个不同的列,状态在一个列中,保存按钮在link_to旁边的另一列中,或者让表单的提交像link_to一样操作。表单会自动应用一些导致拆分表单问题的 CSS。
<tbody>
<% @training_resource.spud_users.each do |training| %>
<tr>
<td><%= training.full_name %></td>
<% utr = training.user_training_resources.where(training_resource: @training_resource).first %>
<td class="utr-form">
<%= tb_form_for [:admin, utr], url: admin_update_utr_path(utr), :remote => true, :html => {:id=>'form_id'}, :data => {:errors => :inline, :success => admin_training_resources_path} do |f| %>
<%= f.select :status, UserTrainingResource.statuses.map {|k,v| [k.humanize, k]}, selected: utr.status %>
</td>
<td class="table-actions">
<%= f.tb_save_buttons('', admin_update_utr_path(utr)) %>
<% end %>
<%= link_to 'submit', admin_update_utr_path(utr), :onclick => "$('#form_id').submit()" %>
<%= link_to 'Delete', admin_destroy_utr_path(utr), :method => :delete, :data => {:confirm => 'Are you sure you want to delete this?'}, :class => 'btn btn-danger btn-sm' %>
</td>
</tr>
<% end %>
</tbody>
所以我想弄清楚是否有办法将表单保存按钮更改为link_to。现在我在link_to“提交”下有它。但是,它不像 tb_save_button 那样操作,因为它不会重定向到正确的位置或保存。
解决方案
你可以在控制器中处理这个。
(example)
def create
if utr.save
redirect_to admin_update_utr_path(utr)
else
# render new form or display the previous view
end
end
推荐阅读
- java - 当注释处于类级别时,Lombok 不会为变量生成 getter 方法
- iot - 涂鸦云支持哪些互通模式?
- django - 如何在 Django 应用程序中使用在 docker-compose 中运行的 wkHTMLtoPDF
- php - 将引导程序 4.5.1 rtl 添加到 laravel
- python - Django 贡献评论:RuntimeError: Model class django_comments.models... INSTALLED_APPS 中的应用程序
- javascript - ResourceNotFoundException:用户池 xyz 不存在 - Cognito adminConfirmSignup
- r - 如何在函数中检查和更改 R 中的数据类型。(动态的)
- python - 如何在 Amazon1 EC2 实例 (Cloud9) 上安装/配置 python 3.7?
- android - 如何在回调中获取改造调用的主体
- python - Jinja2 - if 语句的表行操作问题