Rumah > pembangunan bahagian belakang > Golang > Cara Membina Aplikasi CRUD dengan Golang, Gin, dan PostgreSQL

Cara Membina Aplikasi CRUD dengan Golang, Gin, dan PostgreSQL

Susan Sarandon
Lepaskan: 2025-01-26 14:03:09
asal
321 orang telah melayarinya

Tutorial ini menunjukkan kepada anda cara membina aplikasi CRUD (Buat, Baca, Kemas Kini, Padam) mudah menggunakan Golang, rangka kerja Gin dan PostgreSQL. Anda akan belajar mengurus data yang disimpan dalam pangkalan data PostgreSQL.

How to Build a CRUD App with Golang, Gin, and PostgreSQL

Jadual Kandungan

  1. Pengenalan
  2. Prasyarat
  3. Struktur Projek
  4. Persediaan Projek
  5. Pembuatan Pangkalan Data dan Jadual
  6. Melaksanakan Pengendali CRUD
  7. Ujian API
  8. Kesimpulan

1. Pengenalan

Panduan ini menggunakan Gin, rangka kerja web Golang yang ringan, untuk mencipta titik akhir API. Aplikasi ini berinteraksi dengan pangkalan data PostgreSQL melalui pemacu pgx. Kebiasaan asas dengan API Golang dan REST diandaikan.

2. Prasyarat

Sebelum bermula, pastikan anda mempunyai:

  • Golang (versi 1.20 atau lebih baru)
  • PostgreSQL (sebarang versi)
  • Posmen (atau alat ujian API yang serupa)
  • Penyunting kod (cth., Kod VS)

3. Struktur Projek

Atur projek anda seperti berikut:

<code>crud-app/
├── main.go            
├── config/
│   └── database.go    
├── controllers/
│   └── item.go        
├── models/
│   └── item.go        
├── routes/
│   └── routes.go      
├── go.mod             
└── go.sum             </code>
Salin selepas log masuk

4. Persediaan Projek

  1. Buat direktori projek dan mulakan modul Go:

    <code class="language-bash">mkdir crud-app
    cd crud-app
    go mod init github.com/yourusername/crud-app  // Replace with your GitHub username</code>
    Salin selepas log masuk
  2. Pasang pakej yang diperlukan:

    <code class="language-bash">go get github.com/gin-gonic/gin
    go get github.com/jackc/pgx/v5</code>
    Salin selepas log masuk

5. Pangkalan Data dan Penciptaan Jadual

  1. Buat pangkalan data PostgreSQL (cth., crud_app).

  2. Sambung ke pangkalan data dan buat jadual items:

    <code class="language-sql">CREATE DATABASE crud_app;
    \c crud_app
    CREATE TABLE items (
        id SERIAL PRIMARY KEY,
        name TEXT NOT NULL,
        description TEXT,
        price NUMERIC(10, 2)
    );</code>
    Salin selepas log masuk

6. Melaksanakan Pengendali CRUD

6.1 Sambungan Pangkalan Data (config/database.go):

<code class="language-go">package config

import (
    "database/sql"
    "fmt"
    "log"

    _ "github.com/jackc/pgx/v5/stdlib"
)

var DB *sql.DB

func ConnectDatabase() {
    // ... (Connection string with your credentials) ...
}</code>
Salin selepas log masuk

6.2 Definisi Model (models/item.go):

<code class="language-go">package models

type Item struct {
    ID          int     `json:"id"`
    Name        string  `json:"name"`
    Description string  `json:"description"`
    Price       float64 `json:"price"`
}</code>
Salin selepas log masuk

6.3 Pengendali CRUD (pengawal/item.go): (Contoh: Cipta)

<code class="language-go">package controllers

import (
    "crud-app/config"
    "crud-app/models"
    "github.com/gin-gonic/gin"
    "net/http"
)

func CreateItem(c *gin.Context) {
    // ... (Implementation for creating a new item) ...
}</code>
Salin selepas log masuk

Laksanakan fungsi yang serupa untuk membaca, mengemas kini dan memadam item.

6.4 Takrif Laluan (laluan/laluan.go):

<code class="language-go">package routes

import (
    "crud-app/controllers"
    "github.com/gin-gonic/gin"
)

func SetupRoutes(router *gin.Engine) {
    router.POST("/items", controllers.CreateItem)
    // ... (Add routes for other CRUD operations) ...
}</code>
Salin selepas log masuk

6.5 Aplikasi Utama (main.go):

<code class="language-go">package main

import (
    "crud-app/config"
    "crud-app/routes"
    "github.com/gin-gonic/gin"
)

func main() {
    config.ConnectDatabase()
    r := gin.Default()
    routes.SetupRoutes(r)
    r.Run(":8080")
}</code>
Salin selepas log masuk

7. Ujian API

Jalankan aplikasi (go run main.go) dan uji titik akhir menggunakan Posmen atau alat yang serupa.

8. Kesimpulan

Anda telah berjaya mencipta aplikasi CRUD asas. Ingat untuk mengisi pelaksanaan pengendali CRUD yang hilang dan menyesuaikan rentetan sambungan pangkalan data kepada persekitaran anda. Asas ini boleh dikembangkan dengan ciri yang lebih canggih.

Atas ialah kandungan terperinci Cara Membina Aplikasi CRUD dengan Golang, Gin, dan PostgreSQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan