精华内容
下载资源
问答
  • Rails

    2016-08-04 11:51:29
    Rails框架首次提出是在2004年7月,它的研发者是26岁的丹麦人David Heinemeier Hansson。不同于已有复杂的Web 开发框架,Rails是一个更符合实际需要而且更高效的Web开发框架。Rails结合了PHP体系的优点(快速开发)和...
    Rails框架首次提出是在2004年7月,它的研发者是26岁的丹麦人David Heinemeier Hansson。不同于已有复杂的Web 开发框架,Rails是一个更符合实际需要而且更高效的Web开发框架。Rails结合了PHP体系的优点(快速开发)和Java体系的优点(程序规整),因此,Rails在其提出后不长的时间里就受到了业内广泛的关注。
    外文名 rails 提出时间 2004年7月 研发者 David Heinemeier Hansson 前    身MVC
    简介编辑
    Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的Ajax应用,到控制器中的访问请求和反馈,到封装数据库的模型,Rails 为你提供一个纯Ruby的开发环境。发布网站时,你只需要一个数据库和一个网络服务器即可。
    Ruby On Rails是一个用于编写网络应用程序的软件包.它基于一种计算机软件语言Ruby,给程序开发人员提供了强大的框架支持.你可以用比以前少的多的代码和 短的多的时间编写出一流的网络软件。
    Ruby On Rails的指导原则是”不要重复你自己”(Don’t Repeat Yourself, 或DRY).意思是说你写的代码不会有重复的地方.比如以往数据库的接口往往是类似的程序代码但是在很多地方都要重复用到.这无论是给编写还是维护都造成 了很大的代价.相反,Ruby On Rails给你提供了绝大多数的支持,让你只需要短短的几行代码就可以实现强大的功能.而且,Rails提供了代码生成工具,让你甚至不需要编写一行代码 就实现强大的管理程序.
    Ruby On Rails通过reflection和runtime extension减少了对configuration文件的依靠,这和Java,C#语言的方向有很大不同,让你减少了很多配置和部署的麻烦,但是性能上却完全可以应付一般网站的需求.
    Rails 支持各类网络服务器和数据库。在服务器方面,我们推荐Apache、 lighttpd 或 nginx 代理至 Mongrel (或者使用FastCGI)。数据库方面,你可以采用MySQL、PostgreSQL、SQLite、Oracle、SQL Server、DB2、 或其他任何我们支持的系统。 Rails可以在各类操作系统上运行,不过我们建议采用基于unix的系统进行开发。[1] 
    发展历程
    Rails3.0经过两年的改进,终于发布了。社区聚集了1600多贡献者一起齐心协力,使一切变得更加美好,更快,更清洁,更美丽。
    在过去的两年中,Ruby on Rails 应用程序框架已经具备了一个由托管和服务提供商组成的一体式行业、一套功能广泛且令人印象深刻的开发工具,还有各种在 Ruby 用语里称为 gems 和 plug-ins 的补充库 — 可增强软件的功能。例如 Engine Yard 和 Heroku 就是两个提供虚拟的、方便的 Rails 软件托管的公司;Oink 和 Bullet 分别用来显示内存使用和性能;Clearance 和 Sunspot 则用来提供现成的身份验证和快速的索引式搜索。
    自2007年Apple的Leopard上捆绑了Ruby on Rails出售以来,Rails 社区也已不断壮大。全球有众多的 Rails 开发人员充满活力、团结互助,并且渴望不断地改进该软件。可以毫不夸张地说,Rails 的改进应归功于社区,因为是程序员之间不断的相互超越使得构建出的软件越来越完善。如此不断地循环,各个功能才得以从初期阶段快速发展,逐渐变的实用、功能不断强大并完善,最终成为不可或缺的工具。在很多情况下,社区认为最基本的 gems 和 plug-ins 都会保留到 Rails 核心中。Rails 的 named scopes(一个查询快捷方式),可实现与 nested forms 相同的功能。这是一个新增的功能,可取代以前的尝试,并在相同的 HTML 表单中创建和编辑多个模型。实际上,对于 Rails 开发人员来说最困难的任务或许就是跟上变化的节奏。(幸运的是,目前有一些 Ruby 和 Ruby on Rails 的每周播客,这些播客会组织并呈现最新趋势以及分享最佳实践。)
    Rails 下一个主要的发布是 Rails 版本 3,该版本继续保持工具包的快速改进。与以往相同,该软件仍然非常 “固执”,即仍然偏向于约定优于配置。Rails 的核心组件始终存在,即 RESTful 路径、关系、验证、模板和数据库抽象化。不过,这些组件的许多内部内容已经被重写或者进行了改进。最明显的并且很大程度上借用了 Merb 的理念的就是很多 Rails 的基本功能不再密切结合。例如,以前只对 Rails 应用程序可用的数据验证便捷功能现在成为独立的组件,并且可以包含在 Vanilla Ruby 代码中。如呈现部件和模板等控制器功能,现在也是相互独立的,并且可以嵌入到任一库中。
    在这篇文章中,您将会了解 Rails 3 及其众多变化和附加功能,以及如何从头创建一个新的 Rails 3 应用程序。
    改进
    Rails 3 中变动的数量太多,无法在此全部列出。要阅读带有补充资料的完整列表,请查询 Rails 3 发布通知。这里仅介绍一些很可能会影响到开发人员的一些变动:
    1. 一条命令可以控制所有事件。有了 Rails 3,无需在每一个应用程序中使用整套脚本(script/server、script/generate 以及其他),使用一条命令即可取代其功能,该命令恰如其分地被命名为 rails。例如,在以前需要键入 ./script/console 的地方,您现在只需键入 rails console。
    2. rails 命令还可以像以前一样生成新的应用程序。其运行方式依据其是否在现有的 Rails 应用程序中启动而有所不同。
    3. 可为依赖性提供具体的解决方案。协调和解决 gem 依赖性是个棘手的问题。与可用 gems 的集合一样,gem 的修订也是随系统的不同而有所变化。因为具有这样的多样化,所以很难广泛地部署或共享一个 Rails 应用程序。Rails 3 引入了 Bundler,这是一个专门用于管理依赖性的实用程序(因此无需再使用 config.gem)。您可以在应用程序根目录内一个名为 Gemfile 的目录中声明依赖性。Bundler 将下载和存储所有指定的 gem。您甚至可以在应用程序中 “打包” gem ,以便阻止从外部存储库下载。
    4. 不带查询语句的查询功能。一直以来,Rails 已经可以充分运用特定于领域的语言 (DSL) — 考虑一下 has_one 或 validates_numericality_of — 有一个明显的例外:数据库查询。可以确定地说,Rails 的动态搜寻器便捷、易用,但混合使用选项哈希值如 :conditions、:order 和 :limit 非常常见,因为都是 find_by_sql 语句。
    5. Rails 3 合并了 relational algebra,这是专门设计用于表示查询的 DSL。基本命令包括 project(用于选择列)、where(用于表示条件)、join(用于指定关系)、take 和 skip(分别用于限定和抵消),以及 group(用于聚集)等其他属性。
    6. 用于模糊样板代码的控制器。Rails 控制器的核心操作 —new、create、edit 和 update — 通常不变,尤其是当控制器大部分用于 CRUD 操作时。事实上,控制器生成器的输出 ./script/generate controller 一般不需要进一步的修改就可以满足需要。考虑到这些相似性,Rails 3 引入了 Responder 来进一步简化代码。例如下面是 create 操作全部所需的几行代码:
    class PostsController respond_to :html, :xml
    def create
    @post = Post.create(params[:post])
    respond_with(@post)
    end
    end
    在该代码片段中,如果 @post 保存成功,respond_with(@post) 将发送到 show 以显示新的记录,而假设对象的验证失败,则发送到 new。 这仅仅是一个小样本。您可以在下一章节找到这些新功能的示例以及更多内容,例如从头构建 Rails 3 应用程序。
    特点
    全栈式的MVC框架
    Rails是一个全栈式的MVC框架,换句话说,通过Rails可以实现MVC模式中的各个层次,并使它们无缝地协同运转起来。
    在实际开发一个MVC模式的Web应用项目时,如果使用Java开发,需要用到Struts(View 层)、Hibernate(Model层)和Struts(Controller 层)spring 整合mvc 3个框架,而且需要额外整合3个框架开发出的内容。而使用Ruby语言开发相同的项目时,只需要用到Rails框架就可以完成。
    约定优于配置
    为了说明各个对象之间的关联关系,一般的Web应用开发框架往往采用写入XML配置文件的方法。这种方式虽然可以解决一些问题,但是却带来了管理上的混乱。
    Rails 对此的态度是约定优于配置,这意味着在Rails中不会出现XML配置文件。Rails使用Web应用多年来积累的各种常见约定(更具体地说是命名规则)来代替XML配置文件,而在Rails内部的映射与发现机制根据这些约定可以实现对象之间的关联。在第1章中,通过Rails的映射与发现机制实现了数据表与Ruby对象之间的关联。
    更少的代码
    使用约定来代替XML配置文件说明Rails本身完成了大量的底层工作,这意味着使用更少的代码来实现应用程序是极有可能的。此外,代码量的缩减也减小了出现bug的可能性,降低了维护程序和升级程序的难度。
    生成器
    Rails 使用的实时映射技术和元编程技术,免去了开发人员在开发过程中编写大量样板文件代码的烦恼。在少数需要使用样板文件代码的时候,开发人员可以通过 Rails内建的生成器脚本实时创建,而不再是通过手工编写。Rails的这个特点可以使开发人员更专注于系统的逻辑结构,而不必为一些琐碎的细节所烦扰。
    零周转时间
    对已有的Web应用系统进行修改后,其一般需要经过配置、编译、发布、重新设置、测试等一系列步骤才能投入使用,这明显浪费了许多时间。而使用Rails开发Web应用系统,可以通过浏览器即时查看程序运行结果,从而节约了大量的时间。
    支架系统
    Rails的支架系统可以自动为任何相关的数据库表创建一套包含标准CRUD操作和前台视图的系统。通过支架系统,开发人员可以方便快捷地操纵数据库中的数据表。此外,Rails也允许开发人员使用自己设计的代码或视图来替换自动生成的代码和视图。
    指导原则

    Rails的指导原则是"不要重复你自己"(Don't Repeat Yourself, 或DRY).意思是说你写的代码不会有重复的地方.比如以往数据库的接口往往是类似的程序代码但是在很多地方都要重复用到.这无论是给编写还是维护都造成了很大的代价.相反,Rails给你提供了绝大多数的支持,让你只需要短短的几行代码就可以实现强大的功能.而且,Rails提供了代码生成工具,让你甚至不需要编写一行代码就实现强大的管理程序.Rails通过reflection和runtime extension减少了对configuration文件的依靠,这和Java,C#语言的方向有很大不同,让你减少了很多配置和部署的麻烦,但是性能上却完全可以应付一般网站的需求.


    展开全文
  • rails

    2018-06-09 23:20:27
    modle的合法性验证 validates是一个方法 class Micropost &... #rails generate scaffold Micropost content:text user_id:integer validates :content,length: {maximum: 140}, presenc...

    modle的合法性验证

    validates是一个方法

    class Micropost < ApplicationRecord
      #rails generate scaffold Micropost content:text user_id:integer
      validates :content,length: {maximum: 140},
                presence: true #验证微博内容必须存在   presence:存在,出席,仪表,风度,鬼魂
      belongs_to :user
    end
    

    render函数,render函数不走路由,直接定位到哪个文件

    1 .在.html.erb中调用render函数,默认路径为views

    layouts文件夹位于views路径下
    比如 :
    views/layouts/application.html.erb

    <!DOCTYPE html>
    <html>
      <head>
        <title><%= full_title(yield(:title)) %></title>
        <%= render 'layouts/rails_default' %>
        <%= render 'layouts/shim' %>
      </head>
    
      <body>
      <%= render 'layouts/header' %>
      <div class="container">
        <%= yield %>
        <%= render 'layouts/footer' %>
        <%= debug(params) if Rails.env.development? %>
      </div>
      </body>
    </html>

    这里用了render函数,想调用的是views/layouts/_rails_default.html.erb
    路径可以直接写成layouts/rails_default
    rails_default对应的就是_rails_default.html.erb这个文件,这是rails的命名规范

    2. 在控制器中调用render函数,路径为当前控制器所对应的视图文件夹

    比如在sessions_control.erb的create方法中

    render 'ttt'

    此时便会跳转到views/sessions/ttt.html.erb

    问题:

    在修改界面中,比如 users/1/edit
    在源码中并没有指定发送patch请求,rails是如何知道该发送post还是patch呢?

    答案:rails中的模型类都实现了new_record?方法,可以判断这个实例是新创建的还是从数据库中取出来的

    $ rails console
    >> User.new.new_record?
    => true
    >> User.first.new_record?
    => false
    展开全文
  • rails/rails

    2020-09-16 15:34:51
    Welcome to Rails What’s Rails? Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern. ...

    Welcome to Rails
    What’s Rails?
    Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern.

    Understanding the MVC pattern is key to understanding Rails. MVC divides your application into three layers: Model, View, and Controller, each with a specific responsibility.

    Model layer
    The Model layer represents the domain model (such as Account, Product, Person, Post, etc.) and encapsulates the business logic specific to your application. In Rails, database-backed model classes are derived from ActiveRecord::Base. Active Record allows you to present the data from database rows as objects and embellish these data objects with business logic methods. Although most Rails models are backed by a database, models can also be ordinary Ruby classes, or Ruby classes that implement a set of interfaces as provided by the Active Model module.

    Controller layer
    The Controller layer is responsible for handling incoming HTTP requests and providing a suitable response. Usually, this means returning HTML, but Rails controllers can also generate XML, JSON, PDFs, mobile-specific views, and more. Controllers load and manipulate models, and render view templates in order to generate the appropriate HTTP response. In Rails, incoming requests are routed by Action Dispatch to an appropriate controller, and controller classes are derived from ActionController::Base. Action Dispatch and Action Controller are bundled together in Action Pack.

    View layer
    The View layer is composed of “templates” that are responsible for providing appropriate representations of your application’s resources. Templates can come in a variety of formats, but most view templates are HTML with embedded Ruby code (ERB files). Views are typically rendered to generate a controller response or to generate the body of an email. In Rails, View generation is handled by Action View.

    Frameworks and libraries
    Active Record, Active Model, Action Pack, and Action View can each be used independently outside Rails. In addition to that, Rails also comes with Action Mailer, a library to generate and send emails; Action Mailbox, a library to receive emails within a Rails application; Active Job, a framework for declaring jobs and making them run on a variety of queuing backends; Action Cable, a framework to integrate WebSockets with a Rails application; Active Storage, a library to attach cloud and local files to Rails applications; Action Text, a library to handle rich text content; and Active Support, a collection of utility classes and standard library extensions that are useful for Rails, and may also be used independently outside Rails.

    Getting Started
    Install Rails at the command prompt if you haven’t yet:

    $ gem install rails
    At the command prompt, create a new Rails application:

    $ rails new myapp
    where “myapp” is the application name.

    Change directory to myapp and start the web server:

    $ cd myapp
    $ bin/rails server
    Run with --help or -h for options.

    Go to http://localhost:3000 and you’ll see: “Yay! You’re on Rails!”

    Follow the guidelines to start developing your application. You may find the following resources handy:

    Getting Started with Rails
    Ruby on Rails Guides
    The API Documentation
    Contributing
    Code Triage Badge

    We encourage you to contribute to Ruby on Rails! Please check out the Contributing to Ruby on Rails guide for guidelines about how to proceed. Join us!

    Trying to report a possible security vulnerability in Rails? Please check out our security policy for guidelines about how to proceed.

    Everyone interacting in Rails and its sub-projects’ codebases, issue trackers, chat rooms, and mailing lists is expected to follow the Rails code of conduct.

    Code Status
    Build Status

    License
    Ruby on Rails is released under the MIT License.

    展开全文
  • opal-rails, 将 ruby 带到Opal的Rails Rails 绑定 蛋白石 Rails 用于蛋白石 ruby 引擎的 Rails 绑定。 ( 变更日志 )安装在你的Gemfile 中gem 'opal-rails'或者当你构建新的Rails 应用程序时:rails
  • Welcome to Rails What's Rails? Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern. ...
  • adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成 AdminLTE Rails gem AdminLTE 是后端的高级 Bootstrap 主题。英镑 AdminLTE Rails gem 与 Rails 资产管道集成了英镑AdminLTE主题。安装将...
  • awesome_rails_console, Rails 控制台增强使你的Rails 控制台更加出色 使你的Rails 控制台非常出色这个 gem 是由使用pry生产,jazz_hands和 jazz_fingers的激发 was 。awesome_rails_console的优点是:减少 gem ...
  • Rails基础入门

    2019-06-16 22:36:27
    Rails 是使用 Ruby 语言编写的 Web 应用开发框架,目的是通过解决快速开发中的共通问题,简化 Web 应用的开发。与其他编程语言和框架相比,使用 Rails 只需编写更少代码就能实现更多功能
  • Welcome to Rails What's Rails? Rails is a web-application framework that includes everything needed to create database-backed web applications according to the Model-View-Controller (MVC) pattern. ...
  • rails_semantic_logger, Rails 语义记录器用语义记录器替换 Rails 缺省记录器 Rails 语义记录器 语义记录器用语义记录器替代 Rails 缺省记录器。http://github.com/rocketjob/rails_semantic_logger文档有关完整文档...
  • Rails::API 是 Rails 的精简版本,针对不需要使用完整 Rails 功能的开发者。 Rails::API 移除了 ActionView 和其他一些渲染功能,不关心Web前端的开发者可更容易、快速地开发应用程序,因此运行速度比正常的 Rails ...
  • rails_apps_composer, 一个 gem,为 Rails 启动应用程序创建 Rails 应用程序模板 Rails 应用编辑器 Rails 应用程序编辑器 gem 安装一个 命令行 工具来从"食谱"的Collection 组装 Rails 应用程序。"你可以使用 rails_...
  • projectile-rails, 基于弹丸的Rails 模式 弹 Rails 概要弹 Rails 是在 GNU Emacs中使用 Ruby on Rails 应用程序和引擎的次要模式。 在内部,它是基于弹 。这意味着你可以在 greping ( 或者 acking ) 文件。运行测试...
  • tinymce-rails, 集成TinyMCE与 Rails 资产管道 用于TinyMCE的 Rails 集成tinymce-rails gem 将 TinyMCE 编辑器与 Rails 资产管道集成在一起。这里 gem 与 Rails 3.1.1和更高的( 包括 Rails 4 ) 兼容。这是 Tiny
  • Hello Rails

    2017-01-19 23:20:07
    Rails是一个MVC模型开发一个Hello Rails的步骤: 写一个控制器 写一个视图 设置一条路径连接他们两个 不需要写模型,因为不需要处理任何数据。一条命令创建控制器前面的文章中说到,一条命令即可新建一个Rails程序 ...

    Rails是一个MVC模型

    开发一个Hello Rails的步骤:

    • 写一个控制器
    • 写一个视图
    • 设置一条路径连接他们两个

    不需要写模型,因为不需要处理任何数据。

    一条命令创建控制器

    前面的文章中说到,一条命令即可新建一个Rails程序
    rails new xxx
    同理,一条命令即可新建一个控制器:
    rails generate controller
    如:
    rails generate controller Say hello goodbye

    做了下面的这些事情:

          create  app/controllers/say_controller.rb
           route  get 'say/goodbye'
           route  get 'say/hello'
          invoke  erb
          create    app/views/say
          create    app/views/say/hello.html.erb
          create    app/views/say/goodbye.html.erb
          invoke  test_unit
          create    test/controllers/say_controller_test.rb
          invoke  helper
          create    app/helpers/say_helper.rb
          invoke    test_unit
          invoke  assets
          invoke    coffee
          create      app/assets/javascripts/say.coffee
          invoke    scss
          create      app/assets/stylesheets/say.scss

    就目前的体验来说,Rails框架帮我们做了好多事情啊。

    理解Rails处理请求的方式(类比.net的路由分发机制)

    仍然需要明确的是:

    一个Rails程序,在用户看来要与一个URL相关联。当你把浏览器指向这个URL时,你就像开始与这个应用程序代码进行对话一样,应用程序负责生成应答信息。

    上面创建Controller时,

    这里写图片描述

    还根据控制器的名字创建了一个视图文件夹,在这个视图文件夹下,根据控制器的方法生成了对应的页面。

    动态网页设计(信息传递)

    一般来说动态内容通过代码控制,在Rails中,这种代码就是Ruby代码。SSH中就是Java代码,.net中就是C#代码。大致两种方法:1)前端代码中夹杂着后端代码;2)通过路由引用后端代码。

    ERB方式

    将模板文件命名为xxx.html.erb,这将告诉Rails,借助ERB系统对文件内容进行扩展。

    ERB是一个过滤器,输入的是.erb文件,输出的是转换后的内容。
    普通前端内容不会被改变,只有在<%= %>之间的内容才会被转化。
    比如:

    <p>
     现在是 <%= Time.now%>
    </p>

    每次刷新浏览器,就可以看到时间更新了。

    这种机制基本上是通用的,只是在语法上有一点点细节的不同。

    开发与生产环境的不同

    我们在开发测试时,没有重新rails s这样,直接在浏览器刷新就可以看到更新后的内容,这实际上是Rails为开发环境提供的便利,生产环境下不是这样的。

    因为这种灵活性的代价是:在用户输入URL和程序作出响应之间造成一个短暂的间隔。

    上面这种把代码写在.erb文件中虽然灵活,但是违背了关注点分离的原则。前端老老实实负责界面就好,动态的内容,逻辑等交给控制器来做就好。

    即:

    • “获得时间”的方法放在控制器
    • 视图只承担显示信息的作用

    时间信息是一份数据,应该由控制器提供给视图。

    在控制器中:

    class SayController < ApplicationController #继承自此控制器
      def hello
        @time = Time.now
      end
      def goodbye
      end
    end

    在视图中:

    <h1>Hello Rails!</h1>
    <p>
     现在是 <%= @time %>
    </p>

    这种变量直接传递过来好方便啊!在.net中还需要用ViewBag等方式传递。

    从这个小demo中看到的是,在控制器类中的实例变量直接在视图中即可引用。

    注意这里在视图中仍然引用了Ruby代码,因为只是一个时间变量,看不出来分离关注点了。实际上我们可以对Time对象进行其他的处理,视图只管用即可,越复杂的逻辑,越能看出这种设计的强大。

    总结访问过程:

    • 用户通过浏览器进入应用程序:localhost:3000/say/hello
    • Rails把URL分为两个部分,对其分析进行路由模式匹配:say是控制器名称,Rails会为SayController这个Ruby类,位于(app/controllers/say_controller.rb文件)新建一个实例。
    • URL路径的下一部分hello被视为行为名称。Rails调用控制器中的hello方法,该方法新建一个Time对象,保存当前的时间。并将其放在@time实例变量中。(控制器准备数据)
    • Rails寻找一个用于显示结果的模板,它会在app/views目录中寻找与控制器名称相同的子目录say,然后在该子目录中寻找与行为名称相符合的文件hello.html.erb.
    • Rails借助ERB模板系统对此文件进行处理,执行其中嵌套的Ruby代码,并将控制器提供的值代入进去。
    • Rails处理的结果发送给浏览器,并且结束对这一请求的处理。

    这样的一个流程,体现了Rails的基本思想之一:

    • 惯例终于配置原则

    访问流程中,行为之间的约束都是通过惯例决定的,并没特意写其他的配置文件。

    关于配置文件,个人觉得其实很繁琐且耗费心力。如果能够用惯例来替代一部分配置文件,我们在写作时就能更加专注于功能代码的设计写作。

    不得不说这样的过程其实是很爽的。

    Web的精髓:页面互联+跳转

    • 超链接方式
    <p>
        Say <a href="/say/goodbye">Goodbye </a>
    </p>

    这种方式的确可以实现,但是效果不佳。因为:Rails把对URL格式的解读直接写进了代码中,而Rails在未来的版本中完全有可能改变目前的解读方式。

    Rails在模板视图中可以使用的辅助方法

    • link_to函数

    学到这里,可以类比.net的是Razor视图下的辅助方法的使用。

    <p>
        Time to Say <%= link_to "Goodbye", say_goodbye_path%>
    </p>

    通过link_to来构造一个超链接:第一个参数是显示的文字,第二个参数是告诉Rails,超链接指向goodbye这个动作。

    这里有个细节,两个参数并未包含在括号中,好像它们不是link_to()函数的参数一样,实际上这也是Ruby的松散之处(优),若一板一眼写出来(用括号):

    <p>
        Time to Say <%= link_to("Goodbye", say_goodbye_path)%>
    </p>

    自然也是可以的。

    say_goodbye_path这种命名方式也是Rails知道的,等价于/say/goodbye路径。也是惯例重于配置的一个方面。

    Rails提供对在应用程序中用到的所有路径命名的能力

    –笔记自《Agile Web Development with Rails》

    展开全文
  • Ruby on Rails入门

    千人学习 2018-12-04 11:14:28
    Ruby 是最优雅的开发语言,Rails是Web开发最快的框架。Ruby on Rails是目前美国创业公司最喜欢用的技术,开发效率基本上是传统Web开发框架的3-5倍。 本视频介绍了Ruby on Rails的快速入门的路径, 可以让新手快速...
  • rails rails_kindeditor

    千次阅读 2013-12-18 15:17:34
    1、安装 gem ...2、运行rails generate rails_kindeditor:install  identical config/initializers/rails_kindeditor.rb  insert app/assets/javascripts/application.js 3、使用 基本用法
  • <div><ul>[ ] Rails upgrade</li><li>[x] Rails 3.2 => Rails 4.0</li><li>[x] Rails 4.0 => Rails 4.1</li><li>[x] Rails 4.1 => Rails 4.2</li><li>[x] Rails 4.2 => Rails 5.0</li>...
  • <p>On reading the documentation from <strong>rails_semantic_logger README, I see that the supported Rails version is: <pre><code> Supports Rails 3.2, 4, 5 </code></pre> <p>Meanwhile from <strong>...
  • ruby on rails Ruby on Rails(RoR) (Ruby on Rails (RoR)) Ruby on Rails, also known as RoR or Rails web framework is a free written in Ruby. It follows the design pattern Model-View-Controller MVC also a...
  • rails 4.0.0 rails bootstrap

    2013-11-12 13:54:11
    1、新建一个项目 rails new intern_sys --skip-bundle -d mysql 2、使用Twitter Bootstrap 在项目的Gemfile文件中添加以下内容 ...gem "less-rails" #Sprockets (what Rails 3.1 uses for its asset pipeline) su
  • chosen-rails, 将选择的javascript库与 Rails 资产管道集成 为 Rails 资产管道选择的选择是一个用于制作长的,笨拙的选择框的用户友好的库。chosen-rails gem 将 Chosen 与 Rails 资产管道集成在一起。用法安装选择...
  • rails4 upgrade to rails5

    千次阅读 2016-11-17 13:46:07
    Rails4 -> Rails5 修改Gemfile gem 'rails', '4.2.6' -> gem 'rails', '~> 5.0.0'然后bundle,报错是肯定的了。。。 把自己的Gem给注释了然后在bundle,是可以了。 然后取消注释,在bundle。有些gem不兼容。可以先...
  • rails 001

    2016-10-20 11:24:18
    1、查看版本 2、创建rails项目 rails new rails new project_name -d postgresql 3.修改Gemfile source 'https://ruby.taobao.org' 4.bundle install 5.rails s 6.修改Gemfi
  • Ruby On Rails教程

    2018-06-22 12:30:54
    Ruby On Rails 官方教程,这本书讲解如何使用 Ruby on Rails 框架开发应用,以及如何把应用部署到生成环境。本书使用 Rails 默认的开发工具栈开发了一个完整的社交应用(类似 Twitter)。读完本书后你将掌握如何使用...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 77,217
精华内容 30,886
关键字:

rails