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: "<h1>hello rails</h1>" # 这里返回的是文本
end
end

创建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
<p id="notice"><%= notice %></p>
<p>
<strong>Name:</strong>
<%= @user.name %>
</p>
<p>
<strong>Email:</strong>
<%= @user.email %>
</p>
<%= link_to 'Edit', edit_user_path(@user) %> |
<%= link_to 'Back', users_path %>
如果创建成功了 那么notice是有值的那么就会显示User was successfully created.
网友评论