溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Beego Web項(xiàng)目的搭建過程

發(fā)布時(shí)間:2021-09-10 07:34:59 來源:億速云 閱讀:186 作者:chen 欄目:大數(shù)據(jù)

本篇內(nèi)容主要講解“Beego Web項(xiàng)目的搭建過程”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Beego Web項(xiàng)目的搭建過程”吧!

Golang最近很火,于是產(chǎn)生了利用golang做web的想法.目前比較熱門的應(yīng)該是beego,iris這兩個(gè)框架,為了快速上手,于是選擇了beego

首先我們要安裝beego框架還有bee工具

go get github.com/astaxie/beego //安裝beegogo get github.com/beego/bee   //安裝bee

bee是beego框架自帶配套的高效工具,使用之后,相信你會(huì)驚嘆他的產(chǎn)出,只需要簡(jiǎn)單的命令,你就可以生成相應(yīng)的目錄結(jié)構(gòu)和代碼

如果你想搭建一個(gè)前后端不分離的項(xiàng)目,那么你只需要運(yùn)行

bee new NewProject(此處為你的項(xiàng)目名)

如果你想搭建一個(gè)分離項(xiàng)目,那么你只需要運(yùn)行


bee api newProject

這兩者大部分是相同的,只有api沒有了views模塊,同時(shí)數(shù)據(jù)是以接口的形式返回

他默認(rèn)是8080端口啟動(dòng)的,如果你的端口被占用,可以修改conf/app.conf文件調(diào)整端口號(hào),如下所示:

httpport=8000

總體框架有了,那么我們要開始生成相關(guān)模型和接口了

bee提供了多種生成代碼的命令行工具,你可以用它直接生成model,controller,router以及遷移到數(shù)據(jù)庫.也可以單純生成其中的一個(gè)或兩個(gè),大部分細(xì)節(jié)搭建可以看一下 bee generate命令

在這里我就介紹一下我個(gè)人比較喜歡的一種用法.

我比較喜歡先建好數(shù)據(jù)庫表結(jié)構(gòu),然后根據(jù)數(shù)據(jù)庫表結(jié)構(gòu)生成代碼.那么需要執(zhí)行以下命令


bee generate appcode -tables="table1,table2,table3" -driver=mysql -conn="用戶名:密碼@tcp(ip地址:端口號(hào))/數(shù)據(jù)庫"] -level=3

tables里面是一個(gè)列表,包含了你需要生成代碼的表,

我也建議大家先建好數(shù)據(jù)庫,然后去生成,因?yàn)樵趯?shí)際開發(fā)中,可能是一個(gè)庫有多個(gè)項(xiàng)目去使用,如果根據(jù)每一個(gè)項(xiàng)目區(qū)生成數(shù)據(jù)庫,這樣顯然會(huì)很混亂.

做到這里,我們整個(gè)項(xiàng)目已經(jīng)完備.這時(shí)候我們會(huì)反向原來我們的項(xiàng)目還沒有配置數(shù)據(jù)庫.beego項(xiàng)目鏈接數(shù)據(jù)庫的配置是從main.go里面配置的,具體配置如下

配好數(shù)據(jù)庫,那么我們就可以愉快的將項(xiàng)目跑起來啦.如果你是前后端分離項(xiàng)目.我們可以運(yùn)行


bee run -gendoc=true -downdoc=true

如果不分離,則直接


bee run

這里講解一下后面兩個(gè)命令的作用

  • --gendoc=true 標(biāo)識(shí)每次自動(dòng)化的build文檔

  • --downdoc=true 就會(huì)自動(dòng)的下載wagger文檔查看器

為什么前后端分離項(xiàng)目要怎么做呢,這是一個(gè)接口可視化工具,可以查看相關(guān)接口的相關(guān)信息,更方便前端開發(fā)人員去對(duì)接.示例圖如下:

Beego Web項(xiàng)目的搭建過程

這是我建的項(xiàng)目,他將每一個(gè)接口都很好的顯示在了網(wǎng)頁上,如果不了解的大家可以去搜索一下swagger

接下來我們給項(xiàng)目配置數(shù)據(jù)庫,數(shù)據(jù)庫配置可以從main.go方法里面配置,這里有一點(diǎn)要注意,你要額外創(chuàng)建一個(gè)default的數(shù)據(jù)庫,我也不懂為什么,但是沒有這個(gè)庫,運(yùn)行會(huì)一直報(bào)錯(cuò)


func main() {   if beego.BConfig.RunMode == "dev" {      beego.BConfig.WebConfig.DirectoryIndex = true      beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"   }   orm.RegisterDriver("mysql", orm.DRMySQL)   orm.RegisterDataBase("default", "mysql", "用戶:密碼@tcp(ip:端口)/數(shù)據(jù)庫名?charset=utf8")   beego.Run()}

如果你要搭建一個(gè)前后端分離項(xiàng)目,那么現(xiàn)在你搭建完成了,接下來只需要根據(jù)自己的實(shí)際應(yīng)用去實(shí)現(xiàn)增刪改查,同時(shí)bee工具已經(jīng)幫你寫好了簡(jiǎn)單的接口,如果只是一個(gè)小應(yīng)用,那么現(xiàn)在應(yīng)該已經(jīng)完成了百分之80了。

到此,相信大家對(duì)“Beego Web項(xiàng)目的搭建過程”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI