rails 中的form_for汇总总结
来源:互联网 发布:手机扫描软件 编辑:程序博客网 时间:2024/05/22 12:43
1、form_for方法是ActionView::Helpers::FormHelper模块内的方法,所以可以在ActionView的实例中直接调用
2、 from_for方法的原型为form_for(record, options = {}, &block),其中record可以是字符串和符号,这时,参数通过params[string/:symbol][:field]传递;record也可以是示例对象,这时参数通过params[instance.class.lowercase][:field]传递,hash中的key与实例的类型名有关,而与instance本身的变量名字无关。
3、当record在routes.rb中定义为resources时,可以不定义url参数,默认情况下,rails会根据record是否为新创建实例来自动安排url,其实根据的是ActiveRecord::Persistence.new_record?()的结果是否为true来判断。
<%= form_for @post do |f| %> ...<% end %>
生成<%= form_for @post, as: :post, url: post_path(@post), method: :patch, html: { class: "edit_post", id: "edit_post_45" } do |f| %>
ActiveRecord::Persistence.new_record?()==false的情况:
<%= form_for(Post.new) do |f| %> ...<% end %>
生成<%= form_for @post, as: :post, url: posts_path, html: { class: "new_post", id: "new_post" } do |f| %>
...<% end %>4
、url_for会使用ActiveModel::Model.persisted?()来判断实例是否是新建的,还会使用ActiveRecord::Integration.to_param方法,默认返回的是id,用来生成url。5、
0 0
- rails 中的form_for汇总总结
- rails 之 form_for VS form_tag
- rails 之 form_for VS form_tag
- rails 之 form_for VS form_tag
- rails 之 form_for VS form_tag
- [Ruby On Rails] form_for 中的一些参数使用以及得到 params
- 【Rails】form_for与form_tag分别用于什么情况
- 【Rails】form_for与form_tag分别用于什么情况
- rails中的form表单总结
- rails中的form表单总结
- rails中的form表单总结
- rails 提供下拉框select和select_tag用法(附加form_for, form_tag提交表单的内容)
- Rails 图表解决方案汇总
- rails 资源汇总
- Rails 图表解决方案汇总
- rails问题汇总
- Rails中的MVC流程与RESTful路由的流程总结
- Rails中的MVC流程与RESTful路由的流程总结
- Sublime Text3配置Node.js开发环境
- git命令的使用
- Linux平台安装MongoDB
- outstanding and out-of-order
- Android 深入理解Android中的自定义属性
- rails 中的form_for汇总总结
- 存储过程详解
- Android 实现高斯模糊效果及低版本兼容
- mysql中文编码
- Android JNI环境搭建
- Storm_关停supervisor 以及 worker 进程, 利用kill
- 本地MAVEN仓库搭建之nexus
- PhotoSwipe简介
- centos 搭建 tomcat