models.go

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊、虛擬主機(jī)、營銷軟件、網(wǎng)站建設(shè)、寶清網(wǎng)站維護(hù)、網(wǎng)站推廣。
============================
package main
import (
"github.com/astaxie/beego/orm"
)
type User struct {
Id int
Name string
Profile *Profile `orm:"rel(one)"` // OneToOne relation
}
type Profile struct {
Id int
Age int16
User *User `orm:"reverse(one)"` // 設(shè)置反向關(guān)系(可選)
}
func init() {
// 需要在init中注冊定義的model
orm.RegisterModel(new(User), new(Profile))
}
main.go
==============
package main
import (
"fmt"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
)
func init() {
//orm.RegisterModel(new(User))
orm.RegisterDataBase("default", "mysql", "ta3:ta3@/ta3?charset=utf8")
orm.RunSyncdb("default", false, true) // true 改成false,如果表存在則會給出提示,如果改成false則不會提示 , 這句話沒有會報(bào)主鍵不存在的錯誤
}
func main() {
o := orm.NewOrm()
o.Using("default") // 默認(rèn)使用 default,你可以指定為其他數(shù)據(jù)庫
user := User{Id: 1}
err := o.Read(user)
if err == orm.ErrNoRows {
fmt.Println("查詢不到")
} else if err == orm.ErrMissPK {
fmt.Println("找不到主鍵")
} else {
fmt.Println(user.Id, user.Name)
}
}
執(zhí)行結(jié)果:
create table `user`
-- --------------------------------------------------
-- Table Structure for `main.User`
-- --------------------------------------------------
CREATE TABLE IF NOT EXISTS `user` (
`id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
`name` varchar(255) NOT NULL,
`profile_id` integer NOT NULL UNIQUE
) ENGINE=InnoDB;
create table `profile`
-- --------------------------------------------------
-- Table Structure for `main.Profile`
-- --------------------------------------------------
CREATE TABLE IF NOT EXISTS `profile` (
`id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
`age` smallint NOT NULL
) ENGINE=InnoDB;
查詢不到
第二次再執(zhí)行:
table `user` already exists, skip
table `profile` already exists, skip
查詢不到
如果 orm.RunSyncdb("default", false, true)改成 orm.RunSyncdb("default", false, false)
則執(zhí)行結(jié)果不會提示。
go語言web框架beego安裝(go mod方式)_不忘初心,方得始終-CSDN博客
重要:將bee命令放到GOROOT/bin目錄下,這步很關(guān)鍵
cp bee /usr/local/go/bin/
注:或者可以將GOPATH/bin設(shè)置為環(huán)境變量
echo ’export PATH=" PATH"' ~/.bashrc
source ~/.bashrc
router路由下方法名要大寫,訪問權(quán)限
wq保存
生效環(huán)境變量: source /etc/profile
go build -o abc.exe可指定編譯后的文件名
Golang常用環(huán)境變量說明與設(shè)置詳解
環(huán)境變量GOBIN表示我們開發(fā)程序編譯后二進(jìn)制命令的安裝目錄。
當(dāng)我們使用go install命令編譯和打包應(yīng)用程序時,該命令會將編譯后二進(jìn)制程序打包GOBIN目錄,一般我們將GOBIN設(shè)置為GOPATH/bin目錄。
export GOBIN=$GOPATH/bin
Go get包管理mod
windows下默認(rèn)項(xiàng)目路徑在go安裝目錄的src下(beego)
在服務(wù)器上運(yùn)行終端服務(wù): 單擊 開始、 指向 程序、 單擊 管理工具,然后雙擊 本地安全策略。 雙擊 本地策略。 雙擊 安全選項(xiàng)。 在右窗格中雙擊 $ 禁止用戶安裝打印機(jī)驅(qū)動程序。 單擊 禁用,然后單擊 確定。 關(guān)閉本地安全設(shè)置窗口。
按照教程已經(jīng)正確的go get了 beego 和 bee;
也在環(huán)境變量$PATH中添加了$GOPATH/bin;
結(jié)果在 $GOPATH/src 下運(yùn)行命令'bee new TestBee'新建一個bee項(xiàng)目時
報(bào)錯
'bee: command not found'
搜索解決方法嘗試了一下幾種:
1.嘗試了 進(jìn)入 $GOPATH/src/github.com/beego/bee
執(zhí)行 go build 也不行
2.在$GOPATH/bin目錄下直接執(zhí)行下 bee包也不行
查到
需要把build的出來的 $GOPATH/bin下的'bee'程序包拷貝到
你配置的$GOROOT的bin文件下面;并執(zhí)行一下程序
mac 默認(rèn)GOROOT地址 '/usr/local/go' 拷貝到下面的bin文件中,然后雙擊運(yùn)行一下'bee'
可以繼續(xù)開始beego學(xué)習(xí)了
又遇到報(bào)錯
命令 "bee run" 報(bào)錯
c.TplName undefined (type *MainController has no field or method TplName)
發(fā)現(xiàn)MainController里面有個報(bào)錯 " c.TplName = "index.tpl""
進(jìn)入 beego.Controller 看一下應(yīng)該是 TplNames ,'TplName' 改成
'TplNames'就行了
應(yīng)該是工具更新不同步的小問題
golang學(xué)習(xí)比較簡單,不過任何一門語言都不是孤立存在的,在這里簡要說明一下golang開發(fā)的學(xué)習(xí)路線
1.golang基礎(chǔ),包括go語言安裝,go語言語法,流程控制語句,函數(shù),方法,面向?qū)ο蟾拍睿W(wǎng)絡(luò)編程,并發(fā)編程等
2.golang開發(fā)框架,包括beego,gin,Iris,Echo等
3.微服務(wù)開發(fā)
4.深入的話還可以學(xué)習(xí)算法部分。如果要接觸區(qū)塊鏈相關(guān)技術(shù)的話,還需要學(xué)習(xí)區(qū)塊鏈的加密算法等相關(guān)知識
5.如果要結(jié)合go實(shí)現(xiàn)應(yīng)用的話,肯定離不開各種數(shù)據(jù)庫,比如關(guān)系型數(shù)據(jù)庫oracle、mysql,或者各類非關(guān)系型數(shù)據(jù)庫等等
6.如果需要開發(fā)界面的話,還需要學(xué)習(xí)網(wǎng)頁編程如html,javascript,vue,elementUI,bootstrap等網(wǎng)頁開發(fā)技術(shù)和框架。
7.在以上學(xué)習(xí)的基礎(chǔ)上還可以向架構(gòu)方面深入學(xué)習(xí)。
鏈喬教育在線祝您學(xué)有所成。
當(dāng)前文章:bee安裝go語言,go語言環(huán)境安裝
轉(zhuǎn)載來源:http://chinadenli.net/article49/dsepheh.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、ChatGPT、關(guān)鍵詞優(yōu)化、軟件開發(fā)、虛擬主機(jī)、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)