Ale*_*sev 6 model-view-controller ruby-on-rails formtastic
有时我们需要没有模型创建的表单 - 例如搜索字段或电子邮件,应该在哪里发送一些指令.创建此表单的最佳方法是什么?我可以创建虚拟模型或类似的东西吗?我想使用formtastic,但不是form_tag.
Jus*_*nch 18
首先,Formtastic在所有情况下都不需要模型,尽管它确实效果最好,并且需要较少的代码与模型.
就像Rails自己的内置form_for函数一样,你可以传入一个符号而不是一个对象作为第一个参数,而Formtastic将构建表单并根据符号发布params.例如:
<% semantic_form_for(:session) do |f| %>
...
<% end %>
Run Code Online (Sandbox Code Playgroud)
这将使控制器可以使用表单值params[:session].
其次,模型并不意味着ActiveRecord模型.我的意思是,Formtastic将一个类的任何实例工作叫声像ActiveRecord模型.
许多人使用Authlogic进行Formtastic身份验证的典型例子.Authlogic的一部分是UserSession模型的概念,它可以正常工作:
控制器:
def index
@user_session = UserSession.new
end
Run Code Online (Sandbox Code Playgroud)
形成:
<% semantic_form_for(@user_session) do |f| %>
<%= f.input :login %>
<%= f.input :password %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
这将使您的表单数据在控制器中可用params[:user_session].
这真的不是很难创建一个模型实例来包裹你的模型的关注.只需继续实施Formtastic期待的方法,直到你开始工作!
| 归档时间: |
|
| 查看次数: |
5820 次 |
| 最近记录: |