美文网首页
Rails控制器及路由基础

Rails控制器及路由基础

作者: 风暴英雄 | 来源:发表于2014-04-17 21:24 被阅读0次
在控制其中指定特定的layout页面
class ExampleController < ApplicationController
    layout 'my_layout' # 将会使用 app/views/layouts/my_layout.html.erb
end
永远不要相信用户提交的数据

我们必须要对用户提交的数据进行过滤

 def article_params
     #我们只提取title,location,excerpt,body,published_at,其他的数据不用处理
      params.require(:article).permit(:title, :location, :excerpt, :body, :published_at) 
 end
在视图中绑定数据
<%= render 'header', :title => 'My Blog' %>

我们在模板中可以这样子使用

 <% title %>
嵌套路由中的表单提交url设置
 form_for([@article, @article.comments.new]) #相当与

 form_for(:comment, @article.comments.new, url: [@article, @article.comments.new])

也可以用下面的方式

form_for(:comment, @article.comments.new, url: article_comments_path(article_id: @article))

更简单直接的方法如下:
:控制器名,:url:xxx_path
<%= form_for :comment, url: article_comments_path(article_id: @article.id) do |f| %>

在模板中使用控制器方法

例如我们在ApplicationController中有一个方法如下

    def current_user
        return unless session[:user_id]
        @current_user ||= User.find_by_id(session[:user_id])
    end

我们就可以在ApplicationController使用下面的方法,使得它可以在模板中使用
helper_method :current_user

相关文章

  • Rails控制器及路由基础

    在控制其中指定特定的layout页面 永远不要相信用户提交的数据 我们必须要对用户提交的数据进行过滤 在视图中绑定...

  • Laravel路由、控制器、模型、视图

    一、路由相关 -> 基础路由设置 -> 路由参数 -> 路由分组 二、控制器 -> 目录结构及创建控制器 cmd进...

  • Rails 控制器与路由

    说明:文章所有内容均截选自实验楼教程【Rails基础入门】,感兴趣的点击教程即可查看完整内容~ 控制器 Actio...

  • rails 方法和对象

    rails 路由(rails 通过路由配置表来转发url动作) 路由表的功能: 接收识别http 请求 处理url...

  • 9月17日知识点记录

    一.Laravel控制器 基础控制器(组织请求处理逻辑) 通过路由来指定控制器行为:Route::get('use...

  • rails 路由学习1

    rails config/routes.rb 指定路由的代码如下 上面的代码定义了5种风格的路由,rails在启动...

  • Routes 路由

    Rails路由种类 (一般路由,命名路由) 使用 :except排除某个路由resource :posts, :e...

  • rails项目学习

    Rails路由学习 <%= link_to 'hello', {:controller => 'welcome',...

  • Rails路由

    资源路由 一行代码完成资源资源路由声明: 这会创建7个不同的路由,这些路由会映射到 Photos 控制器上。 这样...

  • Laravel-RestfulAPI 资源控制器

    laravel里有基本控制器和控制器路由。不过我们这里介绍另一种风格--RESTFul。具体的RESTFul风格及...

网友评论

      本文标题:Rails控制器及路由基础

      本文链接:https://www.haomeiwen.com/subject/tmeltttx.html