zoukankan      html  css  js  c++  java
  • Rails Action View::Helpers 方法

    一为什么在Rails使用helper方法:

           前言:在生成controller文件时的rails app就会顺带生成相应的helper文件。

           1、Helper方法指的是可以在template中使用的辅助方法,把输出的资料转化为输出的html字符串;

           2、可以是简化template的文件复杂结构,即将template中比较复杂的结构用helper文件包装起来,简化template的界面和易于修改

    已下都是helper辅助方法(其中的几个):

    二、asserts(静态档案)辅助方法

             1、rails整合stylesheet和javascript档案,可以加速浏览器的加载

             2、可以让rails编译用sass 和coffeescript写的stylesheet和javascript

             3、如果内容修改会让rails在静态网叶上加上时间序号,保证用户下载到最新的版本

             4、通过它,rails可以帮助所有的asserts加上静态档案伺服器网址

             常用的几个方法:

    • javascript_include_tag
    • stylesheet_link_tag
    • image_tag
    • video_tag
    • audio_tag

     三、表单辅助方法
            form_tag 和 form_for 的区别:

       <%= form_for @event do |f| %>
            <%= f.text_field :name %>
            <%= f.submit %>
       <% end %>

            form_for 要传入model物件,修改的时候可以自动把预设值带入

       <%= form_tag "/search" do %>
           <%= text_field_tag :keyword %>
           <%= submit_tag %》
    <% end %>

     表单栏辅助方法:

    • text_field
    • text_area
    • radio_button
    • check_box
    • select
    • select_date, select_datetime
    • submit
    处理form_for的一个问题:
    form_for必须要有model的属性:如果没有的话,要在相应的model里添加方法作为充当属性
    四、如何使用helper和自定义helper:
    自定义helper只需要在app/hleper里自定义就好,application_helper.rb是全局的
    使用helper例子:
       module ApplicationHelper
          def gravatar_url(email)
            gravatar_email = Digest::MD5.hexdigest(email.downcase)
            return "http://www.gravatar.com/avatar/#{gravatar_email}?s=48"
          end
        end

     可以在Template中这样使用:

    <%= image_tag gravatar_url(user.email) %>


  • 相关阅读:
    java实现第三届蓝桥杯填算式
    java实现第三届蓝桥杯填算式
    微信--高效解决token及授权用户openid的持久化处理办法
    微信开发学习总结——微信开发入门(转)
    Java 微信公众号开发--- 接入微信
    微信开发工具类
    手把手教你反编译别人的app
    马士兵hadoop第五课:java开发Map/Reduce(转)
    马士兵hadoop第四课:Yarn和Map/Reduce配置启动和原理讲解(转)
    马士兵hadoop第三课:java开发hdfs(转)
  • 原文地址:https://www.cnblogs.com/chenzhenzhen/p/4019813.html
Copyright © 2011-2022 走看看