学习视频

https://www.bilibili.com/video/BV1RJ411W7N3?t=49&p=7

一. 启动rails

  1. 启动

    cd circles/         #到circles的项目根目录里 以下项目名称为 circles
    rails s -p 3001 #如果不写端口,默认是3000
    rails s -b 0.0.0.0 #-b 开放ip,外网可访问

    启动后不要关闭命令行窗口,不然服务就挂了

  2. 访问页面

    localhost:3001

二. 创建控制器welcome 和 index页面

如果创始的数据模型是对应一张表,那么要使用复数的形式

例如给users表创建一个控制器

rails g controller users

  1. 新打开一个命令行,在命令行里输入rails g controller welcome index

    例子

    haima@haima-PC:/media/haima/34E401CC64DD0E28/site/go/src/ruby/circles$ rails g controller welcome index
    Running via Spring preloader in process 26338
    create app/controllers/welcome_controller.rb
    route get 'welcome/index'
    invoke erb
    create app/views/welcome
    create app/views/welcome/index.html.erb
    invoke test_unit
    create test/controllers/welcome_controller_test.rb
    invoke helper
    create app/helpers/welcome_helper.rb
    invoke test_unit
    invoke assets
    invoke scss
    create app/assets/stylesheets/welcome.scss

    自动创建了

    app/controllers/welcome_controller.rbapp/views/welcome/index.html.erb

    welcome_controller.rb

    class WelcomeController < ApplicationController
    def index
    end
    end

    index.html.erb

    <h1>Welcome#index</h1>
    <p>Find me in app/views/welcome/index.html.erb</p>
  2. 添加路由

    config/routes.rb

    Rails.application.routes.draw do
    get 'welcome/index' #添加路由
    resource :user
    get 'users/test1'
    # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
    end
  3. 浏览器访问

    http://127.0.0.1:3001/welcome/index

    返回下面的内容成功.

安装bootstrap

参考:

https://github.com/twbs/bootstrap-sass

https://github.com/rails/jquery-ujs

  1. 修改Gemfile

    Gemfile里添加

    gem 'bootstrap-sass', '~> 3.4.1'
    gem 'sassc-rails', '>= 2.1.0'
    gem 'jquery-rails'
  2. 命令行执行 bundle install

    下面可以看到已经安装成功

  3. 修改css

    a. app/assets/stylesheets/application.css 改为 app/assets/stylesheets/application.scss

    b. application.scss 加入下面的引用

    @import "bootstrap-sprockets";
    @import "bootstrap";
  4. 修改js

    app/assets/javascripts/application.js里添加

    //= require jquery
    //= require jquery_ujs
  5. 修改application.html.erb

    删除文件app/views/layouts/application.html.erb里的 'data-turbolinks-track': 'reload'

       <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    <%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>

    修改为

       <%= stylesheet_link_tag 'application', media: 'all' %>
    <%= javascript_pack_tag 'application' %>
  6. html里添加代码

    修改 app/views/welcome/index.html.erb 文件

    <h1>Welcome#index</h1>
    <p>Find me in app/views/welcome/index.html.erb</p> <div class="alert alert-success">
    Success
    </div>
  7. 访问页面

    http://127.0.0.1:3001/welcome/index

    效果:

    至此就ok了

04. rails入门学习 创建控制器的更多相关文章

  1. 记录21.08.04 — mybatis入门学习

    mybatis入门 mybatis简介 MyBatis 是一款优秀的持久层框架,它支持自定义 SQL.存储过程以及高级映射.MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工 ...

  2. 04 Python入门学习-流程控制(if else elif while for)

    一:流程控制if 语法一: if 条件: code1 code2 code3 ... age = 20 height = 170 weight = 60 sex = 'female' is_beaut ...

  3. 【原】iOS学习之控制器的创建

    本次博客是一篇总结性质的博客,总结的是各种创建控制器的方式以及一些需要注意的操作. 1.通过storyboard创建控制器 正如我上一篇博客中所说,当 Main Interface 没有选定的时候,我 ...

  4. Asp.Net MVC4.0 官方教程 入门指南之五--控制器访问模型数据

    Asp.Net MVC4.0 官方教程 入门指南之五--控制器访问模型数据 在这一节中,你将新创建一个新的 MoviesController类,并编写代码,实现获取影片数据和使用视图模板在浏览器中展现 ...

  5. Asp.Net MVC5入门学习系列③

    原文:Asp.Net MVC5入门学习系列③ 添加一个视图(View) 接着上篇的入门系列,上面解说添加一个简单Controller(控制器),这里我们简单的在来添加一个View(视图)来展示我们Co ...

  6. Asp.Net MVC5入门学习系列②

    原文:Asp.Net MVC5入门学习系列② 添加一个Controller(控制器) 因为我们用的是Asp.Net MVC,MVC最终还是一套框架,所以我们还是需要遵循它才能玩下去,或者说是更好的利用 ...

  7. Asp.Net MVC5入门学习系列⑤

    原文:Asp.Net MVC5入门学习系列⑤ 检查VS生产的编辑方法和编辑窗体 前面我们一步使用强类型,然后创建Controller(控制器)的时候,VS默认已经给我们把CURD都简单的实现了.这篇的 ...

  8. Nginx 入门学习教程

    昨天听一个前同事说他们公司老大让他去研究下关于Nginx 方面的知识,我想了下Nginx 在如今的开发技术栈中应该会很大可能会用到,所以写篇博文记录总结下官网学习教程吧. 1. 什么是Nginx? 我 ...

  9. Three入门学习笔记整理

    一.官方网站:https://threejs.org 二.关于Three.js 三.开始 四.实例 基本结构 结果 五.概念 坐标系 场景 相机 灯光 3D模型 六.简单动画 七.交互控制 结束 # ...

  10. Nacos入门学习&实践

    文中涉及到了一些模块代码没有给出,我一并上传到github了,可以整个项目clone下来进行调试. 地址:https://github.com/stronglxp/springcloud-test 1 ...

随机推荐

  1. C++ atomic

    atomic 每个 std::atomic 模板的实例化和全特化定义一个原子类型.若一个线程写入原子对象,同时另一线程从它读取,则行为良好定义. 另外,对原子对象的访问可以建立线程间同步,并按 std ...

  2. 批量导出导入IIS下所有网站方法

    C:\Windows\System32\inetsrv\config\ applicationHost.config 存放的是网站列表配置信息,复制到目标服务器相同目录下(建议备份目标服务器原文件). ...

  3. #线段树#洛谷 4340 [SHOI2016]随机序列

    题目 分析 可以发现加号和减号会抵消掉,真正有用的答案就是第一段的乘积. 那也就是 \(\sum_{i=1}^nS_i*2*3^{n-i-1}\),其中 \(S_i\) 表示 \(a_1\) 到 \( ...

  4. #树状数组#洛谷 3531 [POI2012] LIT-Letters

    题目 给出两个长度相同且由大写英文字母组成的字符串\(A\).\(B\),保证\(A\)和\(B\)中每种字母出现的次数相同. 现在每次可以交换\(A\)中相邻两个字符,求最少需要交换多少次可以使得\ ...

  5. 并发和Read-copy update(RCU)

    目录 简介 Copy on Write和RCU RCU的流程和API RCU要注意的事项 RCU的java实现 总结 简介 在上一篇文章中的并发和ABA问题的介绍中,我们提到了要解决ABA中的memo ...

  6. OpenHarmony 4.0 Beta1发布,邀您体验

      初夏之际,OpenAtom OpenHarmony(简称"OpenHarmony") 4.0 Beta1版本如期而至.4.0 Beta1版本在3.2 Release版本基础上, ...

  7. openGauss Sqlines 使用指导

    openGauss Sqlines 使用指导 Sqlines 简介 Sqlines 是一款开源软件,支持多种数据库之间的 SQL 语句语法的的转换,openGauss 将此工具修改适配,新增了 ope ...

  8. 如何通过 kubectl 进入 node shell

    概述 假设这样一个场景: 生产环境中,Node 都需要通过堡垒机登录,但是 kubectl 是可以直接在个人电脑上登录的. 这种场景下,我想要通过 kubectl 登录到 K8S 集群里的 Node, ...

  9. python websocket 参数

    websocket中就有建立连接connect.发送消息send等函数可供使用,但是websocket.WebSocketApp将这些都封装好了,只用在实例化的时候传入自定义函数即可,更方便.因此这里 ...

  10. 【笔记】go语言--切片的操作

    go语言--切片的操作 接上篇切片的概念开始 //Slice添加元素 arr := [...]int{0,1,2,3,4,5,6,7} s1 := arr[2:6] s2 := s1[3:5]//[5 ...