2018-07-08

一、 框架的理解

框架(rails/padrino)其实只是一个gem,只不过他比一般的gem功能更强大

二、批量赋值

rails中直接批量赋值是会报forbidden的,必须使用 params.require(:group).permit(:title,:desc)

三、提交表单

rails提交一个表单到create action 什么也不做,居然不会报错,只是返回204

四、表单helper

除了form_for、form_tag 还有一个 form_with 也是第一次知道

五、命令

现在rails中,将rake 命令整合到rails 中了,以前的rake db:migrate可以用rails db:migrate,所有都可以用 rails 开头

六、partial集合

在使用partial集合时,partial中的变量,等同于partial模版的名称

七、提交表单

提交表单创建数据失败时,重新render页面,此时rails 会自动保存失败字段自动包裹到 div 中,并重新添加了类`field_with_errors'中

八、modle中保存错误信息

@product.errors.full_messages 数组中查看

九、路由

  1. 非资源式路由
    get 'welcome/index'
  2. 资源式路由单数与复数区别
    单数复数指 resource 和 resources
  • 单数:url 中不会出现:id
  • 单数:不会出有 index action
  • 单数:会把资源变成复数(如果是单的时候)
  1. 命令空间的主要作用是,做区分权限等
namespace :admin do
  resources :products
end
  1. 而资源嵌套主要是出于模型关系
resources :articles do
  resources :comments     # 一篇文章中包含多个评论
end

十、模型关联

  1. 同时删除
    has_many :comments, :dependent => :destroy
  2. 创建关联数据
    文章 有多个评论
    @article.comments.create(comment_params)
    3、表单中传递方式
# 第一个参数 用数组
<%= from_for [@article, @article.comments.build]  do |f| %>
  ....
<% end %>

十一、api 查找

点这里

你可能感兴趣的:(2018-07-08)