# 模型-視圖-控制器(MVC)、html
Rails應用程序的文件結構裏面有一個文件夾叫作app/,其中有三個子文件夾:models, views和controllers。數據庫
MVC說明:在Rails交互中,瀏覽器發送一個請求(request),網絡服務器收到請求將其傳送到Rails的控制器,而後決定下一步作什麼。某些狀況下,控制器會當即渲染視圖(view)模板,生成HTML,而後將結果發送回瀏覽器。對於動態網站來講,控制器會和模型(model)交互。模型是一個Ruby對象,表示網站中的一個元素(例如一個用戶),而且負責和數據庫通訊。調用模型後,控制器再渲染視圖並將生成的HTML代碼返回給瀏覽器瀏覽器
1、route文件: 路徑:
/home/caopu/blog/configruby
文件名:routes.rb 代碼:
Rails.application.routes.draw do
#resources :articles服務器
get 'sessions/new'網絡
post 'sessions/create'session
get 'applicants/new'架構
post 'applicants/create'app
resources :articles do
resources :comments
end
get 'welcome/index'
root 'welcome#index'
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
end分佈式
2、controller文件: 路徑:
/home/caopu/blog/app/controllers
文件名:welcome_controller.rb 代碼:
class WelcomeController < ApplicationController
def index
end
end
3、view文件: 路徑:
/home/caopu/blog/app/views/welcome
文件名:index.html.erb 代碼:
<h1>Hello, Rails!</h1>
<%= link_to 'My Blog', controller: 'articles' %>
運行: 在地址欄輸入 http://localhost:3000/welcome/index 回車以後咱們就能看到「Hello,Rails!」顯示在頁面上。代碼說明: 咱們在地址欄輸入「http://localhost:3000/welcome/index」以後, route下的文件接收到」welcome/index「, 將路徑首先指向controller下面的welcome打頭的「welcome_controller.rb」文件 調用裏面的方法,執行一些處理。 而後將數據放在 views文件夾下面的welcome文件夾下的index打頭的index.html.erb文件裏面。 利用這個頁面帶着處理完的數據顯示到畫面上
# 表現層狀態轉化(REST)
REST是一種架構方式,用來開發分佈式,基於網絡的系統和程序。Rails程序中,REST意味着大多數的組件(如用戶和微博)會被模型化,變成資源(resource),能夠被建立(create),讀取(read),更新(update)和刪除(delete),這些操做會與關係型數據庫中的CRUD操做和HTTP請求方法(POST,GET,PATCH和DELETE)對應起來。
# controller類裏面的對象.all方法:
class UsersController < ApplicationController
def index
@users = User.all
end
end
解釋:它要求User模型從數據庫中讀取全部的用戶,而後將結果賦值給@User變量。
簡單來講就是經過調用Rails中叫作Active Record的庫(以下代碼),返回全部用戶。
文件位置:app/models/user.rb
User模型中的代碼:
class User < ActiveRecord::Base end