美文网首页
rails 框架

rails 框架

作者: 风___________ | 来源:发表于2018-03-14 17:24 被阅读4次

rails指令前可以加 spring

spring rake db:migrate

view

# view中嵌套ruby代码
# =的作用就是会输出结果
<%=  Time.now.to_s  %>
<%   %>
# 实例:
# 常用的方法:
# link_to "链接显示文字",options = {}, html_options = {} ;默认是get方法请求,生成超链接
# 下面代码:生成<a>标签(下面是这句话生成的a标签,)
<%= link_to category.name,posts_path(category:category.id),class:"blog-nav-item" %>
<a class="blog-nav-item" href="[/posts?category=1](http://localhost:3000/posts?category=1)">New feature</a>
# form_for: 生成一个前端的表单  关联model
<%= form_for(@user, url: sign_in_path) do |f|%>
    <div class="form-group">
      <label for="exampleInputEmail1">Email address</label>
      <%= f.email_field :email, class:"form-control", placeholder:"Email" %>
    </div>
    <div class="form-group">
      <label for="exampleInputPassword1">Password</label>
      <%= f.password_field :password, class:"form-control", placeholder:"Password" %>
    </div>
    <%= f.submit "Sign in",class:"btn btn-default" %>
<% end %>
# 点击sign in按钮之后请求如下:
http://localhost:3000/sign_in
Parameters :{"utf8"=>"✓",
 "authenticity_token"=>"Twm5lH19nk/tfFsY906b3HNNn8wYXIK6j1rW3FsxJNg9kMLzRUi8bZeGRxDkFEUWSHJT/IHkWuJu0qM7Xz2CxQ==",
 "user"=>{
  "email"=>"11111@qq.com",
 "password"=>"[FILTERED]"
  },
 "commit"=>"Sign in"}
# form_tag:生成一个前端的表单  不关联model
<% %>
# view 映射表
input  textfield
submit button

model

# 连表查询
Post.joins(:categories).where(categories:{id:params[:category]})

controller

# 页面加载前调用authenticate 方法 
  before_filter :authenticate
# controller 调用new和create方法时,跳过调用authenticate 方法
  skip_before_filter :authenticate, only: [:new, :create]

数据库

# 所有数据库操作都需要先进入 consove
rails c
# 插入一个对象
Post.create(title:'first dota',content:'dota very good',author:'dota_chen',published_at:Time.now)

view和controller数据是如何传递的

# 1. view获取controller中的数据
#  与动作绑定的view,默认可以访问动作中的所有变量
# 2. view传递给controller数据
# 通过post 网络请求传递数据 

相关文章

网友评论

      本文标题:rails 框架

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