rails ActiveView

来源:互联网 发布:java小球弹跳动画程序 编辑:程序博客网 时间:2024/05/07 03:13

在view文件夹中的erb代码文件,其中的变量都是对应的controller中的变量。理论上Controller中的变量会全部发送给对应的前端代码,大概是变量名字相同就好了,不过我也不确定。也可以指定Controller只发送某几个变量,但是现在我还不会。
在erb文件中,有两种ruby代码嵌套方式:使用<%= %>和<% %>
这两种区别只有中间的等号,带等号的嵌套方式是表示要将内容输出,而不带等号的则一般是逻辑代码,比如什么if…else…end啦。
下面是两个具体的例子:

  1. link_to方法
    默认使用get方法请求
 <%= link_to '显示文字',options = {}, html_options = {} %>
  1. form_for方法,会传入一个模型对象,并使用该对象,对表单进行初始化
    form_tag,与form_for对应,但是这个方法单纯生成一个纯表单,不接受出事模型
    form_for是对form_tag进行的封装。
    加入
    <%= form_for(@user) do |f| %>        <!--其他内容-->    <% end %>

会使用@user进行对表单内部初始化。
在使用form_for和form_tag时候,加入要进行更改,复制操作的时候使用form_for,只是进行向服务器提交数据,使用form_tag

局部视图:
在rails工程中,有个app/views/appllcation.html.erb文件,这个文件中的代码都是html代码中的头和尾,以及部分css,js,body部分,用yield替代,不同的内容,加载不同的局部视图文件
能减低服务器的负载,前端组织更清晰,有序

0 0
原创粉丝点击