Golang ialah bahasa pengaturcaraan yang popular dalam bidang pembangunan web. Ia cekap, mudah dan boleh dipercayai, dan sangat sesuai untuk membangunkan aplikasi web dengan keperluan konkurensi, kebolehskalaan dan prestasi yang tinggi. Beego ialah rangka kerja MVC yang sangat popular di Golang Ia mudah untuk dimulakan dan menyediakan sejumlah besar fungsi, menjadikan pembangunan aplikasi web lebih mudah dan lebih cekap.
Artikel ini terutamanya memperkenalkan cara menggunakan rangka kerja Golang dan Beego untuk membina aplikasi web.
Sebelum kita mula, kita perlu memasang rangka kerja Golang dan Beego. Laman web rasmi Golang boleh memuat turun pakej pemasangan dari https://golang.org/ dan memasangnya dengan sewajarnya mengikut sistem pengendalian anda. Selepas pemasangan selesai, kami juga perlu mengkonfigurasi pembolehubah persekitaran GOPATH.
Dalam sistem Windows, mengkonfigurasi GOPATH boleh diselesaikan dengan langkah berikut:
Pada sistem Linux dan Mac, anda boleh menambah arahan berikut pada fail ~/.bash_profile:
eksport GOPATH=$HOME/goproject
eksport PATH=$PATH :$GOPATH/bin
Untuk memasang Beego, gunakan arahan berikut:
$ go get -u github.com/astaxie/beego
$ go get -u github.com/ beego/ bee
Mencipta projek Beego baharu adalah sangat mudah, cuma jalankan arahan berikut:
$ bee new myproject
Arahan ini akan mencipta projek Beego bernama "myproject" dan mencipta direktori yang sepadan di bawah direktori src GOPATH. Seterusnya, kita perlu beralih ke direktori tersebut dan jalankan arahan berikut untuk memulakan aplikasi:
$ cd myproject
$ bee run
Kemudian, buka URL http:// dalam pelayar localhost:8080 anda, anda boleh melihat halaman alu-aluan Beego. Ini bermakna kami telah berjaya mencipta aplikasi Beego baharu.
Kini, kita boleh mula menulis pengawal dan pandangan kita sendiri. Dalam Beego, pengawal digunakan untuk memproses permintaan input dan menjana respons output, dan pandangan digunakan untuk memberikan respons output.
Mula-mula, mari buat pengawal bernama "mycontroller" dan tambahkan kaedah bernama "index":
pengawal pakej
import (
"github.com/astaxie/beego"
)
taip MyController struct {
beego.Controller
}
func (c *MyController) Get() {
c.Data["Name"] = "Beego" c.TplName = "index.html"
}
Kemudian, mari buat fail paparan bernama "index.html":
<title>Welcome to {{.Name}}!</title>
<h1>Welcome to {{.Name}}!</h1>
Fail paparan ini menggunakan bahasa templat Golang untuk memberikan respons output dan menetapkan pembolehubah Nama Nilai ditetapkan kepada Beego. Sekarang kita boleh menjalankan aplikasi dan melihat halaman dalam penyemak imbas untuk melihat sama ada ia berjaya. Jika semuanya berjalan lancar, kita sepatutnya dapat melihat teks bertajuk "Selamat Datang ke Beego!"
Biasanya, aplikasi web perlu mengakses pangkalan data untuk menyimpan atau mendapatkan semula data daripada pangkalan data. Di Golang, kami boleh menggunakan banyak pemacu pangkalan data yang berbeza untuk menyambung ke jenis pangkalan data yang berbeza. Dalam artikel ini, kami akan menggunakan pangkalan data MySQL sebagai contoh.
Pertama, kita perlu memasang dan mengkonfigurasi pangkalan data MySQL. Selepas pemasangan selesai, kita perlu menambah kod berikut pada kod untuk menyambung ke pangkalan data:
pakej utama
import (
"github.com/astaxie/beego" _ "github.com/go-sql-driver/mysql"
)
func init() {
// Set database information. mysqluser := beego.AppConfig.String("mysqluser") mysqlpass := beego.AppConfig.String("mysqlpass") mysqlurls := beego.AppConfig.String("mysqlurls") mysqlport := beego.AppConfig.String("mysqlport") mysqldb := beego.AppConfig.String("mysqldb") // Connect to MySQL database. dsn := mysqluser + ":" + mysqlpass + "@tcp(" + mysqlurls + ":" + mysqlport + ")/" + mysqldb + "?charset=utf8" orm.RegisterDataBase("default", "mysql", dsn)
}
Coretan kod ini mendapatkan maklumat akaun dan kata laluan yang diperlukan untuk menyambung ke MySQL daripada fail konfigurasi Beego dan menyambung ke pangkalan data MySQL apabila aplikasi dimulakan .
Kini, kami telah berjaya menyambung ke pangkalan data MySQL. Seterusnya, kita perlu mentakrifkan model data untuk mendapatkan dan menyimpan data daripada pangkalan data. Di Golang, kita boleh menggunakan perpustakaan ORM (Object-Relational Mapping), seperti GORM atau XORM, untuk mengurus pangkalan data dengan mudah.
Dalam bahagian ini, kami akan menggunakan perpustakaan GORM sebagai contoh. Mula-mula, kita perlu memasang perpustakaan GORM:
$ go get -u github.com/jinzhu/gorm
Kemudian, kita boleh mencipta model bernama "mymodel" dalam projek, sebagai berikut Ditunjukkan:
model pakej
import (
"github.com/jinzhu/gorm"
)
taip MyModel struct {
gorm.Model Name string
}
Kemudian, kita perlu memulakan pangkalan data GORM dalam fungsi utama:
pakej utama
import (
"github.com/astaxie/beego" "github.com/astaxie/beego/orm" _ "github.com/go-sql-driver/mysql" "myproject/models"
)
func init() {
// Set database information. mysqluser := beego.AppConfig.String("mysqluser") mysqlpass := beego.AppConfig.String("mysqlpass") mysqlurls := beego.AppConfig.String("mysqlurls") mysqlport := beego.AppConfig.String("mysqlport") mysqldb := beego.AppConfig.String("mysqldb") // Connect to MySQL database. dsn := mysqluser + ":" + mysqlpass + "@tcp(" + mysqlurls + ":" + mysqlport + ")/" + mysqldb + "?charset=utf8" orm.RegisterDataBase("default", "mysql", dsn) // Register ORM model. orm.RegisterModel(new(models.MyModel))
}
Kini, kami telah berjaya mencipta model dan menyambung ke pangkalan data. Kita boleh menanyakan model menggunakan kod berikut dalam pengawal:
pengawal pakej
import (
"github.com/astaxie/beego" "myproject/models"
)
taip MyController struct {
beego.Controller
}
func (c *MyController) Get() {
var mymodels []models.MyModel orm.NewOrm().QueryTable("my_model").All(&mymodels) c.Data["MyModels"] = mymodels c.TplName = "index.html"
}
Dalam artikel ini, kami memperkenalkan cara membina aplikasi web menggunakan rangka kerja Golang dan Beego. Kami belajar cara membuat pengawal dan pandangan, menyambung ke pangkalan data dan mencipta model. Walaupun artikel ini hanyalah contoh mudah, ia boleh menjadi titik permulaan untuk bermula dengan Golang dan Beego. Jika anda ingin meneroka lebih banyak ciri dan penggunaan Golang dan Beego, sila lihat dokumentasi rasmi dan kod sampel.
Atas ialah kandungan terperinci golang beego build. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!