当前位置: 首页 > news >正文

百度网站学校党建品牌建设规划工具刷网站排刷排名软件

百度网站学校党建品牌建设规划,工具刷网站排刷排名软件,客服电话系统 人工,网站建设公司营销推广概述: 在学习GORM过程中,总是在调用结构体和文件导入这里出错,所以整理了以下文档用于梳理变量/结构体命名规则和import导入的知识点 一、变量/结构体命名规则 变量/结构体都遵守同样的命名规则:可见性由首字母大小写决定 大写…

概述:

在学习GORM过程中,总是在调用结构体和文件导入这里出错,所以整理了以下文档用于梳理变量/结构体命名规则import导入的知识点

一、变量/结构体命名规则

变量/结构体都遵守同样的命名规则:可见性由首字母大小写决定

  • 大写首字母:公开的(可导出的)其他包可以访问它。

  • 小写首字母:私有的(不可导出的) 只能在定义它的包内部访问

    命名变量
    变量命名应遵循Go的命名惯例,一般使用驼峰式命名法。局部变量通常使用小写字母开头(user),而导出的结构体使用大写开头(User)。这样命名后,你可以直接使用包名加类型名的方式在其他包中引用这些类型或函数。

附录 基本规则

小驼峰 aVar:局部变量(包括函数参数)
大驼峰 AndVar:导出的变量/结构体、类型、函数、方法等

二、GROM实际案例

下面是如何在main.go中导入并使用/models包中的User结构体的具体步骤:

1、定义User结构体

假设有一个(位于/models/user.go)文件,其中定义了User结构体:

 注:这里因为User是大写的,表明是可以导出的
// 文件路径: /models/user.go
package modelstype User struct {Name stringAge  int
}

2、 在main.go中导入User结构体,以及对应的操作

在main.go中,你可以这样导入并使用User结构体:
···

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

总结

在main.go中使用models包中的User结构体,你需要先导入models包,然后使用models.User来创建User实例。确保User结构体是导出的(即首字母大写),这样才能在包外部访问它。

三、结构体中的公开和私有字段

//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结构体包含嵌入字段gorm.Model:一个嵌入式基础模型,GORM会自动为你的数据库表添加y一些基础字段:

  1. ID:唯一标识符,主键
  2. CreatedAt:被创建的时间
  3. UpdatedAt:最后一次更新的时间
  4. DeletedAt:被删除的时间,用于支持软删除(标记为删除而非DB实际删除)

3、 GORM自动迁移技术

GORM自动迁移功能:根据go程序中定义的结构体创建对应的数据库表

	//连接数据库db, err := gorm.Open(sqlite.Open("gotest1.db"), &gorm.Config{})//使用Gorm自动迁移功能db.AutoMigrate(&models.User{})

4、硬删除和软删除

  • 硬删除:实际地从数据库删除
  • 软删除:没有实际擅长,只是设置DeletedAt为当前时间,标记为已删,在查询中会被GORM忽略
http://www.hkea.cn/news/381975/

相关文章:

  • 网站开发凭证做什么科目百度推广关键词多少合适
  • 网站正在建设 h5模板新闻热点
  • 龙岗公司网站建设怎么上百度搜索
  • 七米网站建设网站自动推广软件免费
  • 余姚公司做网站跨境电商怎么做
  • 顺义哪有做网站厂家百度快照在哪里找
  • 深圳南山网站建设重庆seo黄智
  • 教育微网站建设我要学电脑哪里有短期培训班
  • 民宿预订网站制作推广方案怎么做
  • 做网站都要掌握什么网页模版
  • 网站怎么做qq微信登陆长沙优化网站哪家公司好
  • 为什么上不了建设银行个人网站漳州网络推广
  • 天津手机网站建站培训代运营公司可靠吗
  • 网站制作的一般步骤长春网站优化平台
  • Python做网站 性能上海seo培训中心
  • 网上投诉平台公众号排名优化
  • 网页模板网站推荐媒体公关是做什么的
  • 泰安的网站建设公司爱站网域名查询
  • 台州椒江网站制作公司广告推销
  • 南康做网站合肥seo招聘
  • 成都网站建设定长沙专业网站制作
  • 有什么网站是python做的如何自己开发一个平台
  • 网站建设标志设计北京网站优化公司
  • 图标使用wordpress杭州seo博客
  • 企业网站如何做推广竞价推广托管公司介绍
  • 网站如何做微信登录seo公司 杭州
  • 中山里水网站建设软文广告案例分析
  • 做外贸是用什么网站做新型网络营销方式
  • 心理咨询网站开发百度手机seo软件
  • 17网站一起做网批seo营销优化