beego框架學習 beego orm對映

2022-06-28 04:48:11 字數 1812 閱讀 2419

什麼是orm

在mvc裡面models層一般是資料庫讀寫邏輯的封裝,資料層的乙個對映,我們可以通過orm對映來自動生成models的腳手架.

beego的orm模組支援三種資料庫,其中就包括了mysql,這裡以mysql為例子來實現orm對映.

(1)資料庫庫部分

a1)連線資料庫

a2)建立資料庫imooc

a3)建立** user

需要說明的是,如果使用的是8.0的mysql,欄位的引號要去掉,5.0左右的版本需要加上.

說一下各個引數的含義:

not null 該欄位不能為空

auto_increment 插入的時候自動增加1

default 預設值,如果沒有指定特定值,那麼用這個值

primary key 指定主碼 

engine=innodb 指定表的內省,相對於另一種myisam型別,

區別如下原來是myisam型別不支援事務處理等高階處理,而innodb型別支援。

myisam型別的表強調的是效能,其執行數度比innodb型別更快,但是不提供事務支援,而innodb提供事務支援已經外部鍵等高階資料庫功能。

另外,myisam型別的二進位制資料檔案可以在不同作業系統中遷移。也就是可以直接從windows系統拷貝到linux系統中使用。

以上解釋來自:

charset=utf8 字符集使用utf8

a4)插入幾條測試資料,現在已經具備了基本的資料庫功能

(2)beego部分

a1)進入工程目錄

a2)bee generate scaffold user -fields="id:int64,name:string,gender:int,age:int" -driver=mysql -conn="root:123@tcp(127.0.0.1:3306)/imooc"

b1)指令比較複雜,分開講一下,generate是自動生成的意思,scaffold是腳手架的意思

b2)user是表名,命令會生成對應的檔案,檔名稱就是user

b3)-fields代表生成的例項的資料結構

b4)-driver是所用資料庫引數

b5)-conn是連線引數"連線角色:密碼@tcp(網域名稱ip:監聽埠)/資料庫名稱"

a3)同意建立models,controller,view的**,均選擇yes

a4)最後會問需不需要建立資料庫的遷移和公升級,因為暫時用不到,選擇no,這個時候腳手架的功能就完成

(3)啟動goland,檢視測試一下生成的**

可以注意到生成controller的每個函式上面都有router註解,支援路由註解的controller不需要再去routers層註冊路由,只需要在router檔案裡面include相應的controller,然後在controller裡面需要router函式上面寫上router的注釋,就可以完成註冊路由.

a1)在router裡面include usercontroller

a2)在main.go的beego.run()上面註冊orm資料庫

a4)啟動應用,然後進入相應的測試路由,檢驗結果.

建立Beego框架

基於 先執行go get u github.com astaxie beego 可能會遇到git missing的問題 安裝git sudo apt get install git 繼續執行 無法繼續的原因可能是因為沒有在全域性中gedit profile裡搭建go環境 解決好後 執行cd gopa...

Beego框架簡介

1.beego是乙個使用go語言來開發web引用的goweb框架,該框架起始於2012年,由一位中國的程式設計師編寫並進行公開,其目的就是為大家提供乙個高效率的web應用開發框架。該框架採用模組封裝,使用簡單,容易學習。方便技術開發者快速學習並進行實際開發。對程式設計師來說,beego掌握起來非常簡...

Beego 框架使用

beego 框架是國人謝孟軍基於go語言net http框架開發的web框架,開發文件比較詳細,beego beego 是典型的mvc架構,也提供了很多模組.比如日誌,cache,效能監測,orm等等並且社群活躍 beego可以用來快速開發api web 後端服務等各種應用,是乙個restful風格...