杂记01

Gemfile 文件

gem 'sqlite3'         #如果没有在后面制定版本号那么就安装最新版本。
gem 'uglifier', '>= 1.3.0'    #这行代码的意思是安装大于等于1.3.0版本的gem

uglifier作用是压缩Asset Pipeline中的文件

gem 'coffee-rails', '~> 4.0.0' #安装大于4.0.0但是小于4.1.0的gem

~> 4.0.0 表示法的意思是只安装最后一个数字变化的版本

修改了很多gem的版本号那么要使用bundle update

返回一个文本

可以在控制器中

class ApplicationController < ActionController::Base
    protect_from_forgery with: :exception # 当CSRF的时候会抛出异常,否则会继续执行

    def hello
        render html: "

hello rails

" # 这里返回的是文本 end end
1-1.png

创建model controller

创建一个控制器

rails g controller 复数
rails generate controller StaticPages home help
  create  app/controllers/static_pages_controller.rb
       route  get 'static_pages/help'   -- 制定这两个路由
       route  get 'static_pages/home'  -- 
      invoke  erb
      create    app/views/static_pages
      create    app/views/static_pages/home.html.erb
      create    app/views/static_pages/help.html.erb
      invoke  test_unit
      create    test/controllers/static_pages_controller_test.rb
      invoke  helper
      create    app/helpers/static_pages_helper.rb
      invoke    test_unit
      invoke  assets
      invoke    coffee
      create      app/assets/javascripts/static_pages.coffee
      invoke    scss
      create      app/assets/stylesheets/static_pages.scss

撤销操作

rails destroy  controller StaticPages home help

创建一个模型

rails g model 单数

撤销

rails destroy model User

创建一个数据库迁移,此处是单数但是创建的表是复数的

rails g migration CreateUser name:string email:string

rails db:migrate
rails db:rollback

如果要回到最开始的状态,可以使用:

rails db:migrate VERSION=0

你可能猜到了,把数字 0 换成其他数字就会回到相应的版本,这些版本数字是按照迁移执行的顺序排列的。


还有最后一种全面的

rails generate scaffold User name:string email:string

什么都有了包括html,他连里面的代码都写好了。。。。我惊呆了


关于controller中代码

 def create
    @user = User.new(user_params)

    respond_to do |format|
      if @user.save
        format.html { redirect_to @user, notice: 'User was successfully created.' }
        format.json { render :show, status: :created, location: @user }
      else
        format.html { render :new }
        format.json { render json: @user.errors, status: :unprocessable_entity }
      end
    end
  end

show.html.erb

<%= notice %>

Name: <%= @user.name %>

Email: <%= @user.email %>

<%= link_to 'Edit', edit_user_path(@user) %> | <%= link_to 'Back', users_path %>

如果创建成功了 那么notice是有值的那么就会显示User was successfully created.

你可能感兴趣的:(杂记01)