# 三、MVC交互

# 概念

MVC,将域逻辑(domain logic)、业务逻辑(business logic)、表现逻辑(GUI)分开

REST 由 Roy Fielding 提出的概念,意思是表层状态转化,Representational State Transfer

Resource 资源:设定用户数据模型 + 网页界面,把Users想象未对象,可以CRUD

控制器是一个中枢,所有程序都会通过它

# Model

Model 是一个Ruby对象,表示网站中的一个元素,并负责和数据库通信;常负责数据合法性验证

# 限制字段长度最大 140
class Micropst < ActiveRecord::Base
  validates :content, length: { maximum: 140 }
end

# View

#完整相对路径
app/views/static_pages/home.html.erb

# Controller

# 表示类的继承, (ApplicationController < ActionControllerController)
class UsersController < ApplicationController

# 调用了 User ActiveRecord 的库,一旦调用 @ 控制器就会调用视图代码
@users = User.all

# Action

GET # 读取一个网页
POST # 创建某个东西
PATCH # 更新
DELETE # 销毁

# REST 结构

  /users   index  GTE  主页

  /users  create  POST  新建新用户

  /users/1  show GET  显示ID为1的页面

  /users/1 update PATCH  更新

  /users/1  destroy  DELETE  删除

  /users/new new  GET  创建用户

  /users/1/edit  edit  GET  编辑用户
Last Updated: 5/14/2022, 11:38:45 AM