国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

邗江區(qū)城鄉(xiāng)建設(shè)局網(wǎng)站數(shù)據(jù)分析軟件

邗江區(qū)城鄉(xiāng)建設(shè)局網(wǎng)站,數(shù)據(jù)分析軟件,合肥學(xué)室內(nèi)設(shè)計學(xué)校,一起秀h5怎么制作概述: 在學(xué)習(xí)GORM過程中,總是在調(diào)用結(jié)構(gòu)體和文件導(dǎo)入這里出錯,所以整理了以下文檔用于梳理變量/結(jié)構(gòu)體命名規(guī)則和import導(dǎo)入的知識點 一、變量/結(jié)構(gòu)體命名規(guī)則 變量/結(jié)構(gòu)體都遵守同樣的命名規(guī)則:可見性由首字母大小寫決定 大寫…

概述:

在學(xué)習(xí)GORM過程中,總是在調(diào)用結(jié)構(gòu)體和文件導(dǎo)入這里出錯,所以整理了以下文檔用于梳理變量/結(jié)構(gòu)體命名規(guī)則import導(dǎo)入的知識點

一、變量/結(jié)構(gòu)體命名規(guī)則

變量/結(jié)構(gòu)體都遵守同樣的命名規(guī)則:可見性由首字母大小寫決定

  • 大寫首字母:公開的(可導(dǎo)出的)其他包可以訪問它。

  • 小寫首字母:私有的(不可導(dǎo)出的) 只能在定義它的包內(nèi)部訪問

    命名變量
    變量命名應(yīng)遵循Go的命名慣例,一般使用駝峰式命名法。局部變量通常使用小寫字母開頭(user),而導(dǎo)出的結(jié)構(gòu)體使用大寫開頭(User)。這樣命名后,你可以直接使用包名加類型名的方式在其他包中引用這些類型或函數(shù)。

附錄 基本規(guī)則

小駝峰 aVar:局部變量(包括函數(shù)參數(shù))
大駝峰 AndVar:導(dǎo)出的變量/結(jié)構(gòu)體、類型、函數(shù)、方法等

二、GROM實際案例

下面是如何在main.go中導(dǎo)入并使用/models包中的User結(jié)構(gòu)體的具體步驟:

1、定義User結(jié)構(gòu)體

假設(shè)有一個(位于/models/user.go)文件,其中定義了User結(jié)構(gòu)體:

 注:這里因為User是大寫的,表明是可以導(dǎo)出的
// 文件路徑: /models/user.go
package modelstype User struct {Name stringAge  int
}

2、 在main.go中導(dǎo)入User結(jié)構(gòu)體,以及對應(yīng)的操作

在main.go中,你可以這樣導(dǎo)入并使用User結(jié)構(gòu)體:
···

package mainimport ("fmt""your-module-name/models" // 替換成自己的模塊名
)func main() {var user models.Useruser.Name = "Alice"user.Age = 30fmt.Println(user)
}

總結(jié)

在main.go中使用models包中的User結(jié)構(gòu)體,你需要先導(dǎo)入models包,然后使用models.User來創(chuàng)建User實例。確保User結(jié)構(gòu)體是導(dǎo)出的(即首字母大寫),這樣才能在包外部訪問它。

三、結(jié)構(gòu)體中的公開和私有字段

//path:/models/user.go
type User struct {Name string  // 公開字段age  int     // 私有字段
}

公開和私有字段類似 java對象 的public和private屬性
公開字段:能自由地讀取和修改
私有字段:不能直接讀取或修改值

//path:main.go
func main() {user := models.User{Name: "Alice"}user.Name = "Bob"  // 可以修改,因為 Name 是公有字段// user.age = 30    // 編譯錯誤,不能修改,因為 age 是私有字段fmt.Println(user.Name)//fmt.Println(user.age)//錯誤
}

四、GORM中的gorm.Model和自動遷移功能

1 gorm.Model、

//path:/models/user.go
type User struct {gorm.ModelUsername stringPassword string
}

User結(jié)構(gòu)體包含嵌入字段gorm.Model:一個嵌入式基礎(chǔ)模型,GORM會自動為你的數(shù)據(jù)庫表添加y一些基礎(chǔ)字段:

  1. ID:唯一標(biāo)識符,主鍵
  2. CreatedAt:被創(chuàng)建的時間
  3. UpdatedAt:最后一次更新的時間
  4. DeletedAt:被刪除的時間,用于支持軟刪除(標(biāo)記為刪除而非DB實際刪除)

3、 GORM自動遷移技術(shù)

GORM自動遷移功能:根據(jù)go程序中定義的結(jié)構(gòu)體創(chuàng)建對應(yīng)的數(shù)據(jù)庫表

	//連接數(shù)據(jù)庫db, err := gorm.Open(sqlite.Open("gotest1.db"), &gorm.Config{})//使用Gorm自動遷移功能db.AutoMigrate(&models.User{})

4、硬刪除和軟刪除

  • 硬刪除:實際地從數(shù)據(jù)庫刪除
  • 軟刪除:沒有實際擅長,只是設(shè)置DeletedAt為當(dāng)前時間,標(biāo)記為已刪,在查詢中會被GORM忽略
http://aloenet.com.cn/news/46312.html

相關(guān)文章:

  • 如何在本地安裝部署 wordpress深度優(yōu)化
  • 順德企業(yè)手機網(wǎng)站建設(shè)廣州seo推廣優(yōu)化
  • 好搜客網(wǎng)站優(yōu)勢的seo網(wǎng)站優(yōu)化排名
  • 眾云網(wǎng)聯(lián)做的網(wǎng)站效果好嗎網(wǎng)絡(luò)營銷外包公司
  • 茂易網(wǎng)站建設(shè)鏈接購買平臺
  • 淮安企業(yè)網(wǎng)站搜一搜
  • wordpress拿站清遠(yuǎn)新聞最新消息
  • b2b平臺選亞馬遜企業(yè)購網(wǎng)站優(yōu)化排名的方法
  • 上海百度關(guān)鍵詞推廣名片seo什么意思
  • 做企業(yè)網(wǎng)站需要做什么seo托管
  • 廈門外貿(mào)網(wǎng)站建設(shè)公司惠州seo排名收費
  • 黃村網(wǎng)站建設(shè)價格臨沂做網(wǎng)絡(luò)優(yōu)化的公司
  • 網(wǎng)站源碼素材視頻專用客戶端app
  • 怎么開網(wǎng)店無貨源店鋪山東公司網(wǎng)站推廣優(yōu)化
  • 怎樣給網(wǎng)站做排名優(yōu)化網(wǎng)絡(luò)加速器
  • 事業(yè)單位做網(wǎng)站需要前置審批嗎如何進(jìn)行網(wǎng)站性能優(yōu)化
  • 免費做翻頁頁面的網(wǎng)站微信crm管理系統(tǒng)
  • 知名網(wǎng)站建設(shè)制作平臺app開發(fā)制作
  • 騰訊網(wǎng)站建設(shè)外鏈生成網(wǎng)站
  • 青島專業(yè)網(wǎng)站設(shè)計的公司百度首頁優(yōu)化
  • 怎樣做企業(yè)手機網(wǎng)站工具站seo
  • 上傳wordpress網(wǎng)站如何制作一個網(wǎng)頁
  • 長沙商城網(wǎng)站網(wǎng)絡(luò)營銷策略都有哪些
  • 垃圾站 WordPress微商如何引流與推廣
  • 紅酒手機網(wǎng)站模板足球積分排行榜最新
  • 在沈陽做一個展示網(wǎng)站多少錢google play商店
  • 網(wǎng)站服務(wù)器與虛擬主機百度知道合伙人
  • 營銷型網(wǎng)站策劃公司seo外包優(yōu)化服務(wù)商
  • 把網(wǎng)站做app最有創(chuàng)意的廣告語30條
  • 移動網(wǎng)站設(shè)計教程引擎搜索入口