使用gorm创建casbin数据库报错

2023-05-16

1.报错

/github.com/casbin/gorm-adapter/v3@v3.13.0/adapter.go:419 Error 1071: Specified key was too long; max key length is 1000 bytes
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x60 pc=0x12ac3c0]

2.解决办法

我试着将数据库中表的类型变为InnoDB确实解决了问题,gorm默认的引擎是MyISAM,为了直接创建innoDB类型的表,于是我将连接数据库部分按照官网做出如下更改

Db.Set("gorm:table_options", "ENGINE=InnoDB").AutoMigrate(&gormadapter.CasbinRule{})

完整连接数据库

func DbConnect() *gorm.DB{
	mysqlConf := GetConfigData()
	DataSource := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8&parseTime=true&loc=Local",
		mysqlConf.MysqlConf.UserName,
		mysqlConf.MysqlConf.Password,
		mysqlConf.MysqlConf.Host,
		mysqlConf.MysqlConf.Port,
		mysqlConf.MysqlConf.DataBase)
	Db, err := gorm.Open(mysql.Open(DataSource), &gorm.Config{})
	Db.Set("gorm:table_options", "ENGINE=InnoDB").AutoMigrate(&gormadapter.CasbinRule{})
	if err != nil {
		log.Fatal(err)
	}
	mysqlDB,err:=Db.DB()
	if err != nil {
		log.Fatal(err)
	}
	mysqlDB.SetMaxIdleConns(5)
	mysqlDB.SetMaxOpenConns(10)
	return Db
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用gorm创建casbin数据库报错 的相关文章

  • mysql数据库报错1146_数据库错误代码1146 - 本地与在线

    我是这个站点的新手 请温和请 xff1a P localhost上的mySQL数据库适用于插入语句 xff0c 但只要将数据库连接更改为服务器连接它给了我错误 xff1a 错误代码1146 xff1a 1146没有任何错误描述 可能是什么原
  • 记一次 Gorm 批量插入遇到的问题以及解决方案

    文章目录 问题现象解决方案 问题现象 最初 xff0c 我们用的是老版本的 Gorm xff0c 但是因为老版本不支持批量插入的功能 xff0c 所以我们将 Gorm 做了升级 xff0c 升级到1 21 9版本 https github
  • Gorm之下载安装gorm.io/driver/sqlite依赖

    文章目录 Gorm之下载安装gorm io driver sqlite依赖1 会出错2 下载MinGW3 配置MinGW环境变量4 检测是否配置成功5 再次下载依赖即可成功 Gorm之下载安装gorm io driver sqlite依赖
  • j记录一次gorm 使用协程 插入数据一直报错问题 -Duplicate entry ‘95‘ for key ‘PRIMARY‘ [14.649ms] [rows

    文章目录 问题描述问题解决 问题描述 报错代码如下 span class token keyword func span span class token function GetSystemInfoSave span span class
  • Casbin Demo实例(支持CSV和MySQL两种策略规则)

    Casbin 帮助文档地址 xff1a https casbin org docs zh CN how it works 常见的设计模式 xff08 DAC xff0c MAC xff0c RBAC xff0c ABAC xff09 0 基
  • Go 每日一库之 casbin

    简介 权限管理在几乎每个系统中都是必备的模块 如果项目开发每次都要实现一次权限管理 xff0c 无疑会浪费开发时间 xff0c 增加开发成本 因此 xff0c casbin库出现了 casbin是一个强大 高效的访问控制库 支持常用的多种访
  • gorm的Raw与scan

    gorm的Raw与scan Raw 中文 xff1a 原生的 作用 xff1a 在写gorm语句时候用来写Raw sql语句 xff08 原生sql语句 xff09 gorm官方介绍Scan https gorm io zh CN docs
  • casbin的详细理解过程(附图片理解)(rbac模型)

    一 casbin模型 casbin模型又叫PERM模型 xff1a subject sub 访问实体 xff0c object xff08 obj访问的资源 xff09 和action xff08 act访问方法 xff09 eft xff
  • 结合 Casbin 对 http 请求做 RBAC 鉴权以及添加请求路由参数支持

    目录 总结 背景 实操 安装 Casbin 创建一个 Casbin 模型 创建一个 Casbin 策略 加载 Casbin 模型和策略并创建一个路由 总结 在本文中 xff0c 我们将介绍如何结合 Casbin 对 HTTP 请求进行基于角
  • Zhong__一文通透Casbin

    时间 xff1a 2021 12 06 环境 xff1a Windows 目的 xff1a Casbin简介与使用 希望对大家有帮助 说明 xff1a 以官方文档为基础来讲解与拓展详解 xff0c 并最终帮助大家在项目中使用 xff01 本
  • GO 权限管理之 Casbin

    GO 权限管理之 Casbin 我们来回顾一下上次分享的 GO中 gjson 库的应用和分享 xff0c 它主要是提供了一种非常快速且简单的方式从json文档中获取相应值 分享了 json与 gjson分别代表什么gjson 的简单使用gj
  • casbin模型

    目录 一 PERM元模型二 基础代码实现步骤1 创建main go步骤2 创建model conf步骤3 创建policy csv 三 role definition 角色域的用法g 61 的用法1 model文件2 policy文件 g
  • Casbin实现RBAC权限访问控制

    1 了解RBAC RBAC全称 xff1a Role Based Access Control xff08 基于角色的访问控制 xff09 例如我们在设计一个财务管理系统时 xff0c 有CEO 财务 销售等角色会访问该系统 都由角色来决定
  • casbin 使用说明记录

    本文简单记录casbin 安装步骤 使用 Casbin 作为 ThinkPHP 的权限控制中间件 PHP Casbin 是一个强大的 高效的开源访问控制框架 xff0c 它支持基于各种访问控制模型的权限管理 Think Casbin 是一个
  • 解决gorm中文表名或表头报错和乱码问题,gorm中文报错如何解决?

    文章目录 报错解决方案原因分析 报错 2021 11 20 16 39 51 C Users asus 3D Objects 个人项目 go网络编程测试 GormTest 主 go 45 Error 1300 Invalid utf8 ch
  • go gorm获取数据库报错:goexit: BYTE $0x90 // NOP

    报错内容很多 xff0c 其实看下来有用的其实就几条 runtime error invalid memory address or nil pointer dereference goexit BYTE 0x90 NOP 我按照官方示例和
  • GORM 基础 -- Gen

    https gorm io gen github 1 GEN Guides GEN 友好和更安全的代码生成 1 1 概述 来自动态原始SQL的惯用和可重用API 100 类型安全的DAO API 不使用 interface Database
  • GEN 自动生成 GORM 模型结构体文件及使用示例

    GEN 自动生成 GORM 模型结构体文件及使用示例 背景 GEN 是一个基于 GORM 的安全 ORM 框架 由字节跳动无恒实验室与 GORM 作者联合研发 主要功能说白了就是帮助生成数据表对应的模型文件和更安全方便地执行SQL 直接使用
  • gorm基础05--CRUD 接口-更新

    gorm基础05 CRUD 接口 更新 介绍 案例 说明 介绍 上文 gorm基础04 CRUD 接口 查询 介绍了gorm 中常见查询方法 本文继续介绍gorm中常见的更新方法 具体包括 保存所有字段 更新单个列 更新多个列 更新选定字段
  • 【Mysql】Communications link failure,The last packet sent successfully to the server was 0 millisecond

    项目背景是数据库和项目不在同一台服务器下 在启动时 突然遇到以下错误 Exception in thread main com mysql jdbc exceptions jdbc4 CommunicationsException Comm

随机推荐

  • VSCode 是什么

    VSCode 是什么 xff0c VS Code的全称是Visual Studio Code xff0c 但这全名实在是太长了 xff0c 很多用户喜欢叫它VS Code 说起VS Code xff0c 官方定义它是一个免费的 开源的跨平台
  • SDN控制器之OVN实验二:使用OVN配置路由器

    概览 基于我上一篇文章中的实验环境 xff0c 我现在将第三层网络基础功能添加到OVN中 最终呈现出来的将是由逻辑路由器连接的一对逻辑交换机 另外 xff0c 路由器将被配置为通过OVN中内置的DHCP服务来提供IP地址 重构逻辑组件 由于
  • 树莓派自带VNC黑屏(灰屏)个人解决办法

    最近购买了树莓派 xff14 xff22 看来许多教程 xff0c 但VNC第一次还正常显示 xff0c 后来就黑屏 xff0c 还有什么现在不能显示桌面什么的 xff0c 下面给大家说下vnc黑屏我的解决办法 xff0c 我发现是vncv
  • Neutron基础知识学习1

    Neutron OpenStack通过Neutron项目在物理网络环境之上提供满足多租户要求的虚拟网络和服务 Neutron提供的网络虚拟化能力包括 xff1a xff08 1 xff09 二层到七层网络的虚拟化 xff1a L2 xff0
  • 使用百度echarts制作可视化大屏——最终效果和动态数据刷新

    最终效果如下图 xff1a 接下来就是数据动态刷新了 xff0c 这个没什么好说的 xff0c 就是一个 post的事 xff0c 传递一个json给自定义的refresh函数就行了 post url null function d ref
  • 简单记录ESP8266WIFI模块网络调试过程,测试通过。

    本文目的 xff0c 使用WIFI模块连接阿里云飞燕平台 xff0c 调试之前我想先测试一下买回来的WIFI模块是否能正常使用 xff0c 可以通过网络调试助手进行测试 以手机WIFI提供局域网环境 xff0c PC端和WIFI模块连接手机
  • 在vue-element-ui的时候 如果同时使用了animated会出现模态框层级显示错误问题

    同时使用element ui 和animated的时候 模态框的层级会出问题 这个时候需要做动画 最好还是用vue原带的动画组件transition和transition group xff0c 然后自定义动画
  • tensorflow数据清洗

    import tensorflow as tf import numpy as np import random import os import math from matplotlib import pyplot as plt def
  • 利用PHPExcel导出数据,下载excel文件正常,打开报错:'break' not in the 'loop' or 'switch' context

    今天有一个需求 xff0c 是利用phpexcel类导出数组为excel文件并下载 xff0c 我本地用的是phpstudy环境 xff1a php版本7 1 13 下载文件正常 xff0c 但是导出的excel文件里面是报错信息 如下 于
  • 如何利用python开启简单http server服务

    一 背景 有时候搭建一个简易的http服务器可以大大提高工作效率 xff0c 比如局域网内共享文件 xff0c http测速等 下文将介绍一种使用python开启简单http server服务的方法 二 构建步骤 1 将python添加到环
  • alembic教程

    安装 pip install alembic 步骤 1 初始化 alembic 仓库 在终端中 xff0c cd 到你的项目目录中 xff0c 然后执行命令 alembic init alembic xff0c 创建一个名叫 alembic
  • 【MATLAB】多个子图之间colorbar不共享问题解决方法

    在实验时 xff0c 发现subplot后每个子图的colorbar不统一 xff0c 于是一番百度 找到解决方法 xff1a 在绘制每个子图后 xff0c 使用caxis 0 1 命令 xff0c 成功解决 for example spa
  • 手把手教你调整电脑磁盘的分区大小

    教程目录 一 前言二 准备工具三 注意事项四 分区步骤 一 前言 我们电脑在使用过程中会下载很多软件 xff0c 尤其是我们计算机专业 xff0c 那不各种IDE装起来 xff0c 这时候会导致某个盘的空间不足 xff0c 需要给它再分些空
  • VirtualBox快照创建

    1 点击控制 gt 生成备份系统快照 2 添加快照名称和描述 xff0c 方便以后还原 3 等待一会 4 备份完成后可在VirtualBox管理器中看到生成的备份
  • putty连接出现remote side unexpected closed network-connection错误

    putty远程连接Red Hat Enterprise Linux 出现remote side unexpected closed network connection错误 查看日志文件 val log secure span class
  • IDEA 创建Servlet项目

    1 打开IDEA xff0c 点击Create New project创建一个一个新项目 2 点击Java Enterprise xff0c 然后选择Web Application xff0c 点击Next 3 设置项目名 xff0c 项目
  • 数据库接口类和接口实现类

    数据库接口类 xff08 BasicDAO java xff09 xff1a 实现对数据库的直接增删查改的interface接口 span class token keyword import span java span class to
  • Linux安装Anaconda

    Anaconda是一个开源的Python发行版本 xff0c 其包含了conda Python等180多个科学包及其依赖项 一 安装Anaconda 1 下载Anaconda安装包 xff08 我的位置是hadoop的家目录 xff0c 即
  • Windows 安装Maven3.6.1

    Win10 安装Maven3 6 1 xff0c 并为IntelliJ IDEA配置本地maven 一 安装Maven二 配置Maven本地仓库三 为IntelliJ IDEA配置本地maven 一 安装Maven 1 前提安装好jdk 2
  • 使用gorm创建casbin数据库报错

    1 报错 span class token operator span github span class token punctuation span com span class token operator span casbin s