Rumah pembangunan bahagian belakang Golang Amalan pembangunan Beego - daripada penerbitan blog ke pusat membeli-belah dalam talian

Amalan pembangunan Beego - daripada penerbitan blog ke pusat membeli-belah dalam talian

Jun 23, 2023 am 10:58 AM
Pusat beli-belah dalam talian beego siarkan blog

Beego ialah rangka kerja pembangunan web berdasarkan bahasa Go. Ia mudah digunakan, cekap, stabil dan pembangunan pesat ia digemari dan digunakan oleh semakin ramai pembangun. Dalam artikel ini, kami akan memperkenalkan cara menggunakan rangka kerja Beego daripada menerbitkan blog kepada membina pusat membeli-belah dalam talian.

1. Penerbitan blog

  1. Pemasangan dan konfigurasi Beego

Pertama, kita perlu memasang dan mengkonfigurasi rangka kerja Beego dalam persekitaran setempat. Anda boleh memasangnya melalui arahan berikut:

go get -u github.com/astaxie/beego
go get -u github.com/beego/bee
Salin selepas log masuk

Selepas pemasangan selesai, cipta projek baharu melalui arahan baharu lebah, seperti berikut:

bee new blog
Salin selepas log masuk

Dalam projek yang dijana, app.conf dalam folder konfigurasi Fail ialah fail konfigurasi utama Beego, di mana kita boleh mengkonfigurasi port, pangkalan data, log, dll.

  1. Menulis kod

Dalam projek yang dijana, fail dalam folder pengawal ialah kod pengawal Beego, di mana kita boleh menulis logik perniagaan yang kita perlukan. Sebagai contoh, kita perlu mencipta model dan pengawal blog:

// models/blog.go
type Blog struct {
    Id int
    Title string
    Content string
    Created time.Time
}

// controllers/blog.go
type BlogController struct {
    beego.Controller
}

func (this *BlogController) Get() {
    // 查询所有博客并渲染到页面
    blogs := models.GetAllBlogs()
    this.Data["blogs"] = blogs
    this.TplName = "blog.tpl"
}

func (this *BlogController) Post() {
    // 新建一篇博客
    title := this.GetString("title")
    content := this.GetString("content")

    blog := models.Blog{
        Title:   title,
        Content: content,
        Created: time.Now(),
    }

    models.AddBlog(&blog)

    this.Redirect("/blog", 302)
}
Salin selepas log masuk

Dalam kod di atas, kami mencipta model Blog, dan melaksanakan logik untuk mendapatkan semua blog dan menambah blog baharu dalam pengawal.

  1. Lihat pemaparan

Beego menggunakan enjin templat bahasa Go untuk melaksanakan paparan paparan biasanya disimpan dalam folder paparan. Dalam contoh ini, kita boleh mencipta fail blog.tpl dan memaparkan halaman untuk memaparkan senarai blog dan borang untuk menambah blog baharu:

<!DOCTYPE html>
<html>
<head>
    <title>Blog</title>
</head>
<body>
    <h1>All Blogs</h1>
    {{range .blogs}}
        <h2>{{.Title}}</h2>
        <p>{{.Content}}</p>
        <p>{{.Created}}</p>
    {{end}}
    <h1>New Blog</h1>
    <form method="post" action="/blog">
        <label>Title:</label>
        <input type="text" name="title"/><br/>
        <label>Content:</label>
        <textarea name="content"></textarea>
        <br/>
        <input type="submit" name="submit" value="Submit"/>
    </form>
</body>
</html>
Salin selepas log masuk

Antaranya, pernyataan {{range .blogs}} digunakan untuk menjadikan semua blog dalam gelung, pernyataan {{.Title}}, {{.Content}}, {{.Created}} digunakan untuk memberikan maklumat blog tertentu.

  1. Jalankan program

Sebelum menjalankan program, anda perlu mencipta atau mengkonfigurasi pangkalan data Anda boleh menetapkan maklumat sambungan pangkalan data dalam fail app.conf. Selepas melengkapkan konfigurasi, gunakan arahan berikut untuk menjalankan program:

bee run
Salin selepas log masuk
Salin selepas log masuk

Lawati localhost:8080/blog dalam pelayar untuk melihat senarai blog.

2. Pusat beli-belah dalam talian

Selain fungsi penerbitan blog, kami juga boleh menggunakan rangka kerja Beego untuk membangunkan pusat membeli-belah dalam talian. Di bawah adalah contoh mudah.

  1. Pemasangan dan konfigurasi Beego

Begitu juga, kita perlu memasang dan mengkonfigurasi rangka kerja Beego dalam persekitaran setempat terlebih dahulu Dalam contoh ini, kita menggunakan arahan berikut untuk memasang ia:

go get github.com/astaxie/beego
go get github.com/beego/bee
Salin selepas log masuk

Dan buat projek baharu melalui arahan baharu lebah:

bee new shop
Salin selepas log masuk

Dalam projek yang dijana, fail app.conf dalam folder konfigurasi ialah fail konfigurasi utama Beego. Kita boleh mengkonfigurasi port, pangkalan data, log, dan lain-lain di dalamnya.

  1. Menulis kod

Dalam projek yang dijana, fail dalam folder pengawal ialah kod pengawal Beego, di mana kita boleh menulis logik perniagaan yang kita perlukan.

// models/goods.go
type Goods struct {
    Id int
    Name string
    Price float64
    Created time.Time
}

// controllers/default.go
type MainController struct {
    beego.Controller
}

func (c *MainController) Get() {
    c.Data["Website"] = "myshop"
    c.Data["Email"] = "myshop@gmail.com"
    c.TplName = "index.tpl"
}

type GoodsController struct {
    beego.Controller
}

func (this *GoodsController) Add() {
    name := this.GetString("name")
    price, _ := this.GetFloat("price", 0.0)

    goods := models.Goods{
        Name:      name,
        Price: price,
        Created: time.Now(),
    }

    models.AddGoods(&goods)

    this.Redirect("/", 302)
}

func (this *GoodsController) GetAll() {
    goods := models.GetAllGoods()
    this.Data["json"] = &goods
    this.ServeJSON()
}
Salin selepas log masuk

Dalam kod di atas, kami mencipta model Barangan dan melaksanakan logik untuk mendapatkan semua produk dan menambah produk baharu dalam pengawal. Logik untuk memaparkan halaman utama dilaksanakan dalam MainController.

  1. Operasi Pangkalan Data

Apabila menambah dan mendapatkan produk, kita perlu menyambung ke pangkalan data, yang boleh dicapai melalui ORM Beego sendiri. Cipta fail database.go baharu dalam folder model untuk memulakan sambungan pangkalan data:

package models

import (
    "github.com/astaxie/beego/orm"
    _ "github.com/go-sql-driver/mysql"
)

func RegisterDB() {
    orm.RegisterDriver("mysql", orm.DRMySQL)
    orm.RegisterDataBase("default", "mysql", "root:@tcp(127.0.0.1:3306)/shop?charset=utf8", 30)
}
Salin selepas log masuk

Apabila menambah produk baharu dan mendapatkan produk, kita boleh mencapai ini melalui kod berikut:

func AddGoods(goods *Goods) (int64, error) {
    if err := orm.NewOrm().Read(&goods); err == nil {
        return 0, errors.New("Goods already exists")
    }
    id, err := orm.NewOrm().Insert(goods)
    return id, err
}

func GetAllGoods() []*Goods {
    var goods []*Goods
    orm.NewOrm().QueryTable("goods").All(&goods)
    return goods
}
Salin selepas log masuk
  1. Paparan paparan

Beego menggunakan enjin templat bahasa Go untuk melaksanakan paparan paparan biasanya disimpan dalam folder paparan. Dalam contoh ini, kita boleh mencipta fail index.tpl untuk memaparkan halaman utama pusat beli-belah dalam talian:

<!DOCTYPE html>
<html>
<head>
    <title>{{.Website}}</title>
</head>
<body>
    <h1>Welcome to {{.Website}}!</h1>
    <h2>Add Goods:</h2>
    <form action="/goods/add" method="post">
        <input type="text" name="name">
        <input type="number" name="price" step="0.01">
        <input type="submit" value="Add">
    </form>
    <h2>All Goods:</h2>
    <table border="1">
        <tr>
            <td>Id</td>
            <td>Name</td>
            <td>Price</td>
            <td>Created</td>
        </tr>
        {{range .goods}}
        <tr>
            <td>{{.Id}}</td>
            <td>{{.Name}}</td>
            <td>{{.Price}}</td>
            <td>{{.Created}}</td>
        </tr>
        {{end}}
    </table>
</body>
</html>
Salin selepas log masuk

Antaranya, pernyataan {{range .goods}} digunakan untuk menjadikan semua produk dalam satu gelung.

  1. Jalankan program

Selepas selesai menulis kod dan templat, gunakan arahan berikut untuk memulakan atur cara:

bee run
Salin selepas log masuk
Salin selepas log masuk

Lawati localhost:8080 dalam pelayar , anda boleh melihat halaman utama pusat membeli-belah dalam talian, menambah produk dan melihat semua produk. Anda boleh menjana fail boleh laku serba lengkap dengan menjalankan arahan berikut:

bee pack
Salin selepas log masuk

Di atas ialah proses praktikal lengkap menggunakan rangka kerja Beego daripada menerbitkan blog ke pusat membeli-belah dalam talian. Saya harap ia akan membantu pembangun yang sedang mempelajari Beego.

Atas ialah kandungan terperinci Amalan pembangunan Beego - daripada penerbitan blog ke pusat membeli-belah dalam talian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Menggunakan Prometheus dan Grafana untuk melaksanakan pemantauan dan membimbangkan di Beego Menggunakan Prometheus dan Grafana untuk melaksanakan pemantauan dan membimbangkan di Beego Jun 22, 2023 am 09:06 AM

Dengan peningkatan pengkomputeran awan dan perkhidmatan mikro, kerumitan aplikasi telah meningkat. Oleh itu, pemantauan dan diagnostik menjadi salah satu tugas pembangunan yang penting. Dalam hal ini, Prometheus dan Grafana ialah dua alat pemantauan dan visualisasi sumber terbuka yang popular yang boleh membantu pembangun memantau dan menganalisis aplikasi dengan lebih baik. Artikel ini akan meneroka cara menggunakan Prometheus dan Grafana untuk melaksanakan pemantauan dan membimbangkan dalam rangka kerja Beego. 1. Pengenalan Beego ialah aplikasi web pembangunan pesat sumber terbuka.

Gunakan Analitis Google untuk mengira data tapak web dalam Beego Gunakan Analitis Google untuk mengira data tapak web dalam Beego Jun 22, 2023 am 09:19 AM

Dengan perkembangan pesat Internet, penggunaan aplikasi Web menjadi semakin biasa Bagaimana untuk memantau dan menganalisis penggunaan aplikasi Web telah menjadi tumpuan pembangun dan pengendali laman web. Google Analytics ialah alat analitis tapak web yang berkuasa yang boleh menjejak dan menganalisis tingkah laku pelawat tapak web. Artikel ini akan memperkenalkan cara menggunakan Google Analitis dalam Beego untuk mengumpul data tapak web. 1. Untuk mendaftar akaun Google Analitis, anda perlu terlebih dahulu

Ralat pengendalian dalam Beego - menghalang ranap aplikasi Ralat pengendalian dalam Beego - menghalang ranap aplikasi Jun 22, 2023 am 11:50 AM

Dalam rangka kerja Beego, pengendalian ralat adalah bahagian yang sangat penting, kerana jika aplikasi tidak mempunyai mekanisme pengendalian ralat yang betul dan lengkap, ia boleh menyebabkan aplikasi itu ranap atau tidak berjalan dengan betul, iaitu untuk projek dan pengguna kami masalah yang sangat serius. Rangka kerja Beego menyediakan satu siri mekanisme untuk membantu kami mengelakkan masalah ini dan menjadikan kod kami lebih teguh dan boleh diselenggara. Dalam artikel ini, kami akan memperkenalkan mekanisme pengendalian ralat dalam rangka kerja Beego dan membincangkan cara ia boleh membantu kami mengelakkan

Menggunakan ZooKeeper dan Kurator untuk penyelarasan dan pengurusan yang diedarkan di Beego Menggunakan ZooKeeper dan Kurator untuk penyelarasan dan pengurusan yang diedarkan di Beego Jun 22, 2023 pm 09:27 PM

Dengan perkembangan pesat Internet, sistem teragih telah menjadi salah satu infrastruktur dalam banyak perusahaan dan organisasi. Untuk sistem teragih berfungsi dengan baik, ia perlu diselaraskan dan diuruskan. Dalam hal ini, ZooKeeper dan Curator ialah dua alat yang patut digunakan. ZooKeeper ialah perkhidmatan penyelarasan teragih yang sangat popular yang boleh membantu kami menyelaraskan status dan data antara nod dalam kelompok. Kurator ialah enkapsulasi ZooKeeper

Lima projek sumber terbuka bahasa Go yang dipilih untuk membawa anda meneroka dunia teknologi Lima projek sumber terbuka bahasa Go yang dipilih untuk membawa anda meneroka dunia teknologi Jan 30, 2024 am 09:08 AM

Dalam era perkembangan teknologi yang pesat hari ini, bahasa pengaturcaraan bermunculan seperti cendawan selepas hujan. Salah satu bahasa yang telah menarik perhatian ramai ialah bahasa Go, yang digemari oleh ramai pembangun kerana kesederhanaan, kecekapan, keselamatan serentak dan ciri-ciri lain. Bahasa Go terkenal dengan ekosistemnya yang kukuh dengan banyak projek sumber terbuka yang sangat baik. Artikel ini akan memperkenalkan lima projek sumber terbuka bahasa Go yang dipilih dan membawa pembaca untuk meneroka dunia projek sumber terbuka bahasa Go. KubernetesKubernetes ialah enjin orkestrasi kontena sumber terbuka untuk automatik

Penggunaan dan pengurusan pengeluaran menggunakan Docker dan Kubernetes dalam Beego Penggunaan dan pengurusan pengeluaran menggunakan Docker dan Kubernetes dalam Beego Jun 23, 2023 am 08:58 AM

Dengan perkembangan pesat Internet, semakin banyak perusahaan telah mula memindahkan aplikasi mereka ke platform awan. Docker dan Kubernetes telah menjadi dua alat yang sangat popular dan berkuasa untuk penggunaan dan pengurusan aplikasi pada platform awan. Beego ialah rangka kerja Web yang dibangunkan menggunakan Golang Ia menyediakan fungsi yang kaya seperti penghalaan HTTP, lapisan MVC, pengelogan, pengurusan konfigurasi dan pengurusan Sesi. Dalam artikel ini kami akan membincangkan cara menggunakan Docker dan Kub

Menggunakan JWT untuk melaksanakan pengesahan dalam Beego Menggunakan JWT untuk melaksanakan pengesahan dalam Beego Jun 22, 2023 pm 12:44 PM

Dengan perkembangan pesat Internet dan Internet mudah alih, semakin banyak aplikasi memerlukan pengesahan dan kawalan kebenaran, dan JWT (JSON Web Token), sebagai mekanisme pengesahan dan kebenaran yang ringan, digunakan secara meluas dalam aplikasi WEB. Beego ialah rangka kerja MVC berdasarkan bahasa Go, yang mempunyai kelebihan kecekapan, kesederhanaan dan skalabiliti Artikel ini akan memperkenalkan cara menggunakan JWT untuk melaksanakan pengesahan dalam Beego. 1. Pengenalan kepada JWT JSONWebToken (JWT) ialah a

Keperluan pembangunan bahasa Go: 5 cadangan rangka kerja yang popular Keperluan pembangunan bahasa Go: 5 cadangan rangka kerja yang popular Mar 24, 2024 pm 01:15 PM

"Go Language Development Essentials: 5 Syor Rangka Kerja Popular" Sebagai bahasa pengaturcaraan yang pantas dan cekap, bahasa Go digemari oleh semakin ramai pembangun. Untuk meningkatkan kecekapan pembangunan dan mengoptimumkan struktur kod, ramai pembangun memilih untuk menggunakan rangka kerja untuk membina aplikasi dengan cepat. Dalam dunia bahasa Go, terdapat banyak rangka kerja yang sangat baik untuk dipilih. Artikel ini akan memperkenalkan 5 rangka kerja bahasa Go yang popular dan menyediakan contoh kod khusus untuk membantu pembaca memahami dan menggunakan rangka kerja ini dengan lebih baik. 1.GinGin ialah rangka kerja web yang ringan dengan pantas

See all articles