`
hideto
  • 浏览: 2687854 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Rails宝典七十九式:生成Named Routes

    博客分类:
  • Ruby
阅读更多
我们有如下三个近乎一样的named routes:
# routes.rb
ActionController::Routing::Routes.draw do |map|
  map.about_company 'about/company', :controller => 'about', :action => 'company'
  map.about_company 'about/privacy', :controller => 'about', :action => 'privacy'
  map.about_company 'about/license', :controller => 'about', :action => 'license'
end


Rails的哲学告诉我们:简化一切!
所以我们这样写:
# routes.rb
ActionController::Routing::Routes.draw do |map|
  def map.controller_actions(controller, actions)
    actions.each do |action|
      self.send("#{controller}_#{action}", "#{controller}/#{action}", :controller => controller, :action => action)
    end
  end
  map.controller_actions 'about', %w[company privacy license]
end
分享到:
评论
3 楼 java_web_hack1 2014-07-31  
请问,routes.rb文件中的mount是干啥的
2 楼 hideto 2007-11-14  
这个系列开始写时第一篇文章就声明是来自railscasts,以后就缺省不声明了
1 楼 hjleochen 2007-11-14  
为什么每次拿railscasts的东西都没有写出处呢?

相关推荐

    Rails的精简版本Rails::API.zip

    Rails::API 可以用来创建只提供API服务(API-Only)的 Rails 应用,不需要整个Rails 栈和模板生成。也可以用来编写在 Web 应用和客户端之间进行数据共享的后端程序,允许开发者创建接受 JSON 格式数据并以传统 RoR ...

    Rails上的API:使用Rails构建REST APIAPIs on Rails: Building REST APIs with Rails

    2. **设置路由**:使用Rails的`routes.rb`文件定义对应的路由规则,例如: ```ruby namespace :api do resources :users, only: [:index, :show, :create, :update, :destroy] end ``` 3. **实现控制器**:针对...

    Rails中应用Ext.tree:以中国的省市地区三级联动选择为例

    这通常包括运行Rails生成器创建模型、迁移文件,并填充数据库。例如: ```bash rails generate model Province name:string rails generate model City province_id:integer name:string rails generate model ...

    Ruby-GoOnRails使用Rails生成器来生成一个Golang应用

    rails generate go_on_rails:app my_go_app ``` 这将在Rails项目的`lib/my_go_app`目录下创建一个新的Go应用结构。 ### 4. 集成Go API `GoOnRails`会生成一个基础的Go API服务器,你可以在此基础上编写业务逻辑。...

    rails-routes:在Rails应用程序上启用configroutes * .rb

    Rails ::路线 您的Rails应用程序上的路线太多? 我也是! 这个gem可让您将路线分隔在不同的文件上。 只需在config/routes/*.rb创建它们就可以了。 安装 将此行添加到您的应用程序的Gemfile中: gem "rails-routes...

    Ruby on Rails入门例子

    - **生成器(Generators)**:Rails提供了强大的生成器工具,可以自动生成模型、控制器、迁移文件等,例如`rails generate model Post title:string content:text`。 - **数据库迁移(Database Migrations)**:...

    Rails相关电子书汇总

    4. **路由(Routes)**:Rails的路由系统将URL请求映射到特定的控制器动作,实现了URL和应用逻辑之间的解耦。 5. **辅助方法(Helper Methods)**:为视图提供便利的功能,如链接生成、样式辅助等。 6. **Scaffold...

    Ruby on Rails入门经典代码

    - Rails Console:交互式的命令行环境,用于调试和测试代码。 - Rails Server:启动本地开发服务器。 7. **Rails最佳实践**: - RESTful设计:遵循HTTP动词(GET, POST, PUT, DELETE)来设计API。 - Convention...

    js_from_routes::motorway:从Rails路线自动生成JS

    : : 来自Routes的JS从您的Rails路由生成路径帮助程序和API方法,从而使您的工作效率更高,并防止发生与路由相关的错误。 由于代码生成是完全可定制的,因此可以在非常不同的场景中使用。为什么? :thinking_face: ...

    graphql-rails-generators:Graphql Rails Scaffold:trade_mark:。 从Rails模型自动生成GraphQL类型

    一些生成器可以轻松将Rails模型与集成。 我之所以创建它,是因为我浪费了太多的按键来手动复制模型架构以创建graphql类型。 该项目包含用于查看ActiveRecord模型架构的生成器,并为您生成graphql类型。 gql:model...

    rails有用的命令

    - `$ rails c` 或 `$ rails console`:启动Rails控制台,进行交互式编程。 - `$ rails server -p 3001`:在端口3001启动服务器。 - `$ rake doc:rails`:生成Rails API文档。 - `$ rails dbconsole`:打开数据库...

    ruby rails demo

    ruby rails demo, rails 简单demo。 (1)到ruby官网:http://www.ruby-lang.org/en/下载window安装包,并安装, ruby版本: ruby -v (2)安装Rails3 gem install rails (3)安装sqlite3 gem install sqlite3-ruby 安装...

    rails指南 中文版

    10. **Rails Console**:提供了一个交互式的命令行工具,用于检查和调试应用,执行Ruby代码,以及与数据库交互。 11. **Rails Generators**:Rails的生成器可以帮助快速创建新的控制器、模型、迁移等,大大提高了...

    java基础之rails命令大全.pdf

    - `rake rails:unfreeze`: 解锁应用程序,使其不再使用冻结的 gems 或 Edge Rails,返回到系统 gems 的流动使用状态。 - **更新 Rails**: - `rake rails:update`: 更新应用程序中的 scripts 和 public/...

    rails_admin_enum4:Rails Admin Rails 4.1枚举

    Rails Admin枚举4 Rails Admin插件,用于正确查看Rails 4.1枚举 安装 gem 'rails_admin_enum4', github: 'sibext/rails_admin_enum4' bundle install 用法 通过生成器生成新模型: rails g model Sibext service:...

    rails5-docker-alpine:使用Alpine Linux的Rails轻量级Docker开发环境

    rails5-docker-alpine:使用Alpine Linux的Rails轻量级Docker开发环境

    Ruby+on+Rails快速Web应用开发实战.pdf

    - **数据库配置**:在Rails中,数据库的配置通常涉及模型的生成,以及在配置文件中设置数据库连接参数。 ### MVC架构模式 - **MVC架构**:文档中提到的MVC是Rails的核心架构模式,它将应用程序分为三个主要的组件...

    rails-erd:生成Rails应用程序的实体关系图

    Rails ERD-为Rails应用程序生成实体关系图 是一颗宝石,它使您可以轻松地基于应用程序的Active Record模型生成图表。 该图概述了模型之间的关系。 拥有描述模型的图表对于您的应用程序而言是完美的文档。 Rails ...

Global site tag (gtag.js) - Google Analytics