一、引入前段框架Beego是一款比較全能性的Go-web 框架,采用了 Go 語(yǔ)言默認(rèn)的模板引擎,可以很方便的" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁(yè) > 營(yíng)銷資訊 > 網(wǎng)站運(yùn)營(yíng) > RE從零開(kāi)始構(gòu)建一個(gè)Go網(wǎng)站(五)

RE從零開(kāi)始構(gòu)建一個(gè)Go網(wǎng)站(五)

時(shí)間:2023-05-29 06:27:02 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2023-05-29 06:27:02 來(lái)源:網(wǎng)站運(yùn)營(yíng)

RE從零開(kāi)始構(gòu)建一個(gè)Go網(wǎng)站(五):之前我們已經(jīng)完成了數(shù)據(jù)庫(kù)的連接和數(shù)據(jù)模型的基本構(gòu)建,接下來(lái)就要開(kāi)始后臺(tái)管理系統(tǒng)的搭建~

一、引入前段框架

Beego是一款比較全能性的Go-web 框架,采用了 Go 語(yǔ)言默認(rèn)的模板引擎,可以很方便的在靜態(tài)HTML中插入動(dòng)態(tài)語(yǔ)言生成的數(shù)據(jù)。

模版運(yùn)行機(jī)制
所以我們能在beego框架中通過(guò)Html5的代碼來(lái)構(gòu)建我們的前端頁(yè)面。

網(wǎng)站的后臺(tái)管理系統(tǒng)使用layui包來(lái)作為基礎(chǔ) UI 框架感興趣的可以去layui的官網(wǎng)上詳細(xì)了解一下這個(gè)ui框架。

從官網(wǎng)上面下載layui框架的文件包并解壓將里面的layui文件夾復(fù)制到網(wǎng)站目錄下的static目錄中。

同時(shí)因?yàn)閘ayui框架的部分功能是依靠jquery來(lái)實(shí)現(xiàn)的,所以在引入layui的同時(shí)還要把jquery也引入才行,下載jquery3的js文件放入 static目錄中的js目錄中。

static目錄是專門用于存放網(wǎng)站程序外部資源的一個(gè)目錄

二、構(gòu)建一個(gè)簡(jiǎn)單登陸頁(yè)面

在views是圖中新建一個(gè)login.html或者是login.tpl文件,模版引擎默認(rèn)是支持tpl和html的后綴名的所以兩種寫法都可以,至于里面是很傳統(tǒng)的Html5的寫法。

<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <script src="/static/js/jquery_3.min.js"></script> <link rel="stylesheet" href="/static/layui/css/layui.css"> <script src="/static/layui/layui.js"></script></head><body><div class="login-main" style="width: 30%;margin: 10% auto"> <header class="layui-elip"><p>管理員登錄:</p></header> <br> <form class="layui-form" action="/login" method="POST"> <div> <input type="text" name="account" required lay-verify="required" placeholder="賬號(hào)" autocomplete="off" class="layui-input"> </div> <br> <div > <input type="password" name="password" required lay-verify="required" placeholder="密碼" autocomplete="off" class="layui-input"> </div> <br> <div > <button type="submit" class="layui-btn" style="width: 100%">登錄</button> </div> </form> <p style="color: red">{{.msg}}</p> <p style="color: red"> {{range .err}} <li style="color: red">{{.}}</li> {{end}} </p></div><script type="text/javascript"> layui.use('form', function(){ var form = layui.form; form.render() });</script></body></html>

三、構(gòu)建一條簡(jiǎn)單的路由

如何讓瀏覽器能過(guò)正確的訪問(wèn)到我們的頁(yè)面呢?這個(gè)時(shí)候我們需要一個(gè)「route」,route能過(guò)根據(jù)url找到對(duì)應(yīng)的程序和頁(yè)面,有點(diǎn)類似于門牌號(hào)。

Beego的路由默認(rèn)是存放在routers/router.go 文件下

打開(kāi)router.go 文件發(fā)現(xiàn)里面已經(jīng)存在了一條路有,那就是程序初始化以后訪問(wèn)跟歡迎頁(yè)時(shí)用到的路由。

我們發(fā)現(xiàn)這條路由是和一個(gè)controllers包里的MainController的結(jié)構(gòu)體綁定在一起的,當(dāng)我們沒(méi)有指定方法時(shí),請(qǐng)求的 method 和函數(shù)名一致,例如GET請(qǐng)求執(zhí)行Get函數(shù),POST請(qǐng)求執(zhí)行Post函數(shù)。

我們先仿照框架自帶的路由寫一條屬于我們自己的路由,放在init函數(shù)中

beego.Router("/login", &controllers.AdminController{})然后在controllers里新建一個(gè)adminController.go文件

并寫入一下代碼

package controllersimport( beego "github.com/beego/beego/v2/server/web")type AdminController struct { beego.Controller}func (a *AdminController) Get() { a.TplName = "login.html"}這樣我們就新建了一個(gè)admin的controllers,并將它的Get方法指向了我們的login.html頁(yè)面,這樣當(dāng)我們?cè)L問(wèn)/login這條路由時(shí),瀏覽器就會(huì)自動(dòng)的跳轉(zhuǎn)到登陸頁(yè)面了。

在終端輸入bee run

當(dāng)程序跑起來(lái)以后訪問(wèn)

http://127.0.0.1:8080/login就能看到我們之前寫的登陸頁(yè)面了

至此我們就成功引入了前端資源并成功構(gòu)建了一個(gè)web頁(yè)面。

關(guān)鍵詞:

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉