Rails--content_for和yield】的更多相关文章

原文地址: http://guides.ruby-china.org/layouts_and_rendering.html Rails 布局和视图渲染 本文介绍 Action Controller 和 Action View 中布局的基本功能. 读完本文,你将学到: 如何使用 Rails 内建的各种渲染方法: 如果创建具有多个内容区域的布局: 如何使用局部视图去除重复: 如何使用嵌套布局(子模板): Chapters 概览:各组件之间的协作 创建响应 渲染视图 使用 render 方法 使用 r…
官方文档:http://guides.rubyonrails.org/layouts_and_rendering.html 渲染 view 渲染 html.rb 与相应的 action controller def update @book = Book.find(params[:id]) if @book.update(book_params) redirect_to(@book) else render "edit" end end 或者渲染 aciton def update @…
  更新: 2017/06/12 更新: 2017/06/16 补充.class的输出 更新: 2017/06/23 .include?检验数组/哈希表是否包含目标值 更新: 2017/07/02 block_given?检验是否给了代码块以及检验是否有layout 更新: 2017/08/26 增加prensent?并与prensence比较 更新: 2018/01/03 增加is_a?, kind_of? (Object) 更新: 2018/02/03 增加instance_of?()的例子…
yield yield self Proc yield带参数 rails中:yield 和 content_for methods.proc.lambda.block 闭包(用proc延长变量的生命周期) method_missing终止对祖先链(ancestors)的查找 p.puts.print 正则.字符相关特殊符号 Module 是 Class 的基类,但Module不能实例化,并且只能与类一同使用 异常 元编程 类打开,添加新方法,如何删减方法 创建单例方法 创建类方法 变量归属 se…
页面渲染时:provide先执行,但找到一个provide之后就不再查找 content_for 顺序执行,在哪个位置,就等之前的渲染完后才执行.但是要等到所有的content被查找完后一块返回,也就是能查找多个 参考文档:http://stackoverflow.com/questions/27814500/ruby-on-rails-provide-vs-content-for First of all, what is streaming? Why would you use it? St…
参考链接:http://guides.rubyonrails.org/layouts_and_rendering.html#structuring-layouts layout layout最基本的使用很简单,默认的layout是app/views/layout目录里与controller同名的模板.如果要指定为其它布局,可以在controller里调用layout方法,像这样: class ProductsController < ApplicationController layout &quo…
http://guides.rubyonrails.org/layouts_and_rendering.html  中文 This guide covers the basic layout features of Action Controller and Action View After reading the guide, i will know: 1.How to use the various rendering methods bulit into Rails. 2.How to…
因为刚学rails,试着做了一个小系统操作微信公共帐号, 之后部署的时候遇见了一个问题,整套系统在互联网端访问,非常的慢,而在手机端访问,10s后才会有响应, 打开chrome的调试工具,发现application-(xxxxdigestxxxxxx).js 这个文件有800多k 之后打开这个文件发现,里面包含有未压缩的jquery 注释版,以及重控件 ckeditor 的代码 于是,问题变成了 1. 如何将jquery 脱水压缩 2. 只在需要时候再加载其他重控件 比如 ckeditor 的j…
引用链接:https://www.ibm.com/developerworks/cn/web/1108_linhx_rails3mvc/ 如果读者已经开发过基于 Rails 的应用,但对其 MVC 间的数据传递还有诸多困惑,那么恭喜您,本文正是要总结梳理 Rails 数据传递的方法和技巧.Ruby on Rails 3(以下统称为 Rails 3)是当前的主要发布版本,本文所述及的内容和代码都基于此版本. Rails 3 简介 Ruby on Rails 是一个 Ruby 实现.采用 MVC 模…
参考链接:http://guides.ruby-china.org/layouts_and_rendering.html#%E9%9D%99%E6%80%81%E8%B5%84%E6%BA%90%E6%A0%87%E7%AD%BE%E5%B8%AE%E5%8A%A9%E6%96%B9%E6%B3%95 讲rails布局就得先说说yield关键字. 在rails布局中,yield标明一个区域,渲染的视图会插入这里.最简单的情况是只有一个 yield,此时渲染的整个视图都会插入这个区域: <html…
  Rails下cloud datastore的使用 背景 部门有一个项目要用Ruby做 WebAPI,DB使用关系型数据库Cloud Sql和非关系型数据库Cloud Datastore . 还不了解Ruby On Rails和CloudDatastore的请参考下面的链接. http://guides.ruby-china.org/ https://thinkit.co.jp/story/2015/02/05/5594 1. Windows下开发环境构建 1.1.构建Ruby On Rail…
初学ruby和rails,想和教程同步,把rails的版本降下来.从4.0.2降到3.2.9 [lucas@lucas ~]$ rails -v Rails 4.0.2 尝试了 sudo gem uninstall rails,告诉我的结果是: [lucas@lucas ~]$ sudo gem uninstall rails Successfully uninstalled rails-4.0.2 重新rails -v  结果还是 4.0.2. 于是重新装个3.9.2吧 $ sudo gem…
通过form来创建数据,本章节将会涉及内容:创建form,用户重导向,渲染views 和 flash消息. 1. views初步 编辑 app/views/posts/index.html.erb这个view文件,如下: <% @posts.each do |post| %> <h2><%=link_to post.title,post%></h2> <%=post.context%><br/><hr/> <% en…
--使用: (1)layout中使用<%=yield(:js)%> (2)html中使用<% content_for :js do %>[XXX]<% end %>…
http://start.jcolemorrison.com/setting-up-an-angularjs-and-rails-4-1-project/ 1. 添加gemgem 'sprockets', '2.12.3' #默认sporckets的版本有bug 2. app/assets/javascripts/ng-app/app.js中代码 //$locationProvider.html5Mode(true); //这行需要注释 3. bower有三种方式 (1)bower.json  …
1.生成静态页面 $ rails generate controller StaticPages home help    #生成主页和帮助页面的路由.控制器及静态页面 $ rails destroy controller StaticPages home help      #撤销生成操作 $ bundle exec rake db:migrate   #迁移操作 $ bundle exec rake db:rollback    #撤销迁移 2.开始测试 TDD: Test Driven D…
只是怕忘了命令,全部撸一次,记个大概.. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 安装Ruby之前,先要安装RVM: curl -L https://get.rvm.io | bash –s 然后,安装一些依赖之后: rvm install ruby version --with-openssl-dir=$HOME/.rvm/usr 之后安装Rails: gem install rails --version 4.0.0 --no-ri --no-rdoc 创建Rails新程序…
rails -h 查看帮助 Usage: rails new APP_PATH [options] Options: -r, [--ruby=PATH] # Path to the Ruby binary of your choice # Default: D:/Rails/Ruby1.9.3/bin/ruby.exe -b, [--builder=BUILDER] # Path to a application builder (can be a files ystem path or URL…
rails总结 注意:本文档以rails3.2版本为基础,并且用RubyMine 4.0.3作为ide 一.rails的结构与重要文件 Rails 是一个MVC库.同时,Rails的特点就是:惯用名优先于配置.也就是说,MVC的3个部件,如果你的控制器取名Foo,那么rails认为你的M,V都是Foo.根据这个特性,使用rails,首先需要了解MVC是怎么一个表现形式.Rails采用目录来管理MVC的各个部件. 要想明白rails的目录,首先需要创建一个rails的web程序. 假设我们有一个r…
Ruby on Rails (ROR)类书籍下载地址及其他(整理) Ruby on Rails 如此之热,忍不住也去看了看热闹,现在把一些相关的电子图书下载地址整理下,方便有兴趣的朋友. 2006-08-23   增加一卡通版的Ruby学习教程和一些不错的介绍(视频,音频,PDF或者Html格式的幻灯片,鉴于个人的听力能力,我还是比较喜欢最后幻灯片). Why's (Poignant) Guide to Ruby - W(p)GtR is a cartoon book which teaches…
1. 如果form中有数据要传回服务器可以用隐藏属性的控件: form_for(xxx) do |f| f.hidden_field :xxx,value:xxx end 2. 如果你需要一些信息放在全局页面框架里,但是这些信息属于某些特定页面的话,可以用如下方法实现: <% content_for :QuestionsCount do %> <%= @question.length if @question %> <%= 0 unless @question %> &…
在blog 应用程序中.你可以通过脚手架(scaffolded)开始建立一个资源. 这将是单一的blog 提交.请输入以下命令 $ rails generate scaffold Post name:string title:string content:text 脚手架将会建立一些文件和目录,然后编辑config/routes.rb文件. 下面是脚手架建立的文件概要. File Purpose db/migrate/20100207214725_create_posts.rb 建立 posts…
Routes✅ Helper Methods✅ Controllers and Requests✅ Simulating Requests⚠️,看之前的博客 What to Expect in a Request Spec ✅ Older Rails Controller Tests ❌ Testing Mailers ❌ Testing Views and View Markup✅ Using Presenters ❌没看需要额外gem Testing Jobs and Cables 这些测试…
 转自:http://blog.csdn.net/lissdy/article/details/9195651   眼看着前端攻城师们都开始使用Bootstrap创作网页,于是也想学着在最近正在学习的Rails中使用Bootstrap. 具体安装使用过程如下: 1.创建Rails工程 rails new usedschool   2.生成脚手架 rails g scaffold Item title:string description:text --skip-stylesheets 3.应用迁…
[Rails] Vue-outlet for Turbolinks 在踩了 Rails + Turbolinks + Vue 的許多坑後,整理  的作法並和大家分享. Initialize the App # initialize the app rails new rails_sandbox_vue --database=postgresql --webpack=vue # install package bundle yarn Scaffold the app # Scaffold the…
添加一些结构 一.网站导航 1.添加一些结构后的网站布局文件 打开文件:app/views/layouts/application.html.erb 简单介绍一下,添加的代码: 我们从上往下看一下这段代码中新添加的元素.前面简单介绍过,Rails 默认使用 HTML5(如文档类型声明 <!DOCTYPE html> 所示).因为 HTML5 标准还很新, 有些浏览器(特别是旧版 Internet Explorer)还没有完全支持,所以我们加载了一些 JavaScript 代码(称作 HTML5…
一. Ruby内置的辅助方法 1.打开文件:app/views/layouts/application.html.erb(演示应用的网站布局) 来咱把注意力放在圈起来的那一行: 这行代码使用 Rails 内置的 stylesheet_link_tag 方法, 在所有媒介类型中引入 application.css .对有经验的 Rails 开发者来说, 这行代码看起来很简单, 但是其中至少有四个 Ruby 知识点可能会让你困惑: 内置的 Rails 方法, 调用方法时不用括号, 符号(Symbol…
续上篇: 一. 有点内容的静态页面 rails new 命令创建了一个布局文件, 不过现在最好不用.我们重命名这个文件: $ mv app/views/layouts/application.html.erb layout_file # 临时改动 注:在真实的应用中你不需要这么做,不过没有这个文件能让你更好地理解它的作用. 注:关于表题所需变动的部分 1. 添加标题 添加标题之前,我们要知道网页的一般结构,如下图所示: 我们要使用 assert_select 方法分别为app/views/sta…
一.相关工具链简介 HAML HAML是专门面向Ruby on Rails模版语法设计的一门标记语言,其结合RoR的views部分模版语法的特点,对原来的*.html.erb(嵌入Ruby代码的HTML页面)进行了简化和封装,使得在编写前端页面时能够更加简洁方便. 例如,下面是一份嵌入式Ruby的HTML页面的代码: <div id='content'> <div class='left column'> <h2>Welcome to our site!</h2&…
前几天刚开始看 Python ,后因为项目突然到来,导致Python的学习搁置了几天.然后今天看回Python 发现 Yield 这个忽然想不起是干嘛用的了(所以,好记性不如烂笔头.).然后只能 花点时间 回顾一下 廖雪峰老师 Python前面的课程内容了 并对廖老师的课程内容做了以下总结: 迭代器(iter):迭代器是访问集合元素的一种方式.迭代器的对象从集合的第一个元素开始访问,直到所有的元素被访问结束.迭代器只能往前不会退后. 不过也没什么,因为很少在迭代过程中往后退.另外迭代器一大优点是…