手摸手,带你用Beego撸商城系列一(基础篇)
完整项目地址: go-shop-b2c
系列文章:
前言
这里不会讲解太多的基础知识,主要介绍关于从零开始使用 Beego 框架撸一个商城思路
目录结构
├── common // 公共函数
├── conf // 配置相关
├── controllers // API请求
│ ├── admin // 后台管理 API
│ ├── web // 移动web商城 API
├── helpers // 工具函数
├── model_views // 前端展示 Struct
├── models // Model层
├── routers // RESTful 路由
├── setting // 系统配置
├── sysinit // 应用启动前初始化
├── .gitignore // git 忽略项
├── go.mod // Go Module依赖
├── go-shop-b2c // SQL文件
├── go-shop-b2c.xml // 系统配置XML
├── main.go // 入口 main.go
├── xxx.p12 // API证书(微信支付)
下面简单介绍目录代码
controllers
简单截取一下 controller/admin 的 controller

这里着重介绍一下 json_controller.go、base_controller.go
- json_controller.go 继承 beego.Controller,增加返回前端 JOSN 数据处理函数、服务报错误处理等公共函数等
- base_controller.go 继承 json_controller.go,重载 Prepare 函数,并做登录有效信息校验等
关键代码示例:


models
使用 Beego 提供的 Bee 工具 api 命令生成的 Model层,主要包含增、删、改、查数据库的函数
截图某个片段示例:

routers
beego 的 RESTful Controller 路由
关键代码示例:


setting
商城后台管理系统的系统设置模快,存储于 xml 文件, setting/setting.go 是封装 对 go-shop-b2c.xml的操作
对应商城管理系统的系统设置模快,前端展示:

sysint
beego 执行 RUN 之前,各种初始化操作,比如 日志打印、数据库连接、CORS配置等
关键代码示例:

手摸手,带你用Beego撸商城系列一(基础篇)的更多相关文章
- 手摸手,带你用Beego撸商城系列二(登录篇)
完整项目地址: go-shop-b2c 系列文章: 手摸手,带你用 Beego撸商城 系列一(基础篇) 手摸手,带你用 Beego撸商城 系列二(登录篇) 手摸手,带你用 Beego撸商城 系列三(系 ...
- 【转】手摸手,带你用vue撸后台 系列三(实战篇)
前言 在前面两篇文章中已经把基础工作环境构建完成,也已经把后台核心的登录和权限完成了,现在手摸手,一起进入实操. Element 去年十月份开始用vue做管理后台的时候毫不犹豫的就选择了Elemen, ...
- 【转】手摸手,带你用vue撸后台 系列四(vueAdmin 一个极简的后台基础模板)
前言 做这个 vueAdmin-template 的主要原因是: vue-element-admin 这个项目的初衷是一个vue的管理后台集成方案,把平时用到的一些组件或者经验分享给大家,同时它也在不 ...
- 【转】手摸手,带你用vue撸后台 系列二(登录权限篇)
前言 拖更有点严重,过了半个月才写了第二篇教程.无奈自己是一个业务猿,每天被我司的产品虐的死去活来,之前又病了一下休息了几天,大家见谅. 进入正题,做后台项目区别于做其它的项目,权限验证与安全性是非常 ...
- 【转】手摸手,带你用vue撸后台 系列一
前言 说好的教程终于来了,第一篇文章主要来说一说在开始写业务代码前的一些准备工作吧,但这里不会教你webpack的基础配置,热更新怎么做,webpack速度优化等等,有需求的请自行google. 目录 ...
- 手摸手带你用Hexo撸博客(二)之配置主题
在上一篇博客手摸手带你用Hexo撸博客(一)中主要介绍了博客的初步搭建 今天我们继续讲如何在Hexo搭建的博客中应用主题 官网选择自己喜欢的主题 点击这里Hexo主题进入官网主题页面 然后选择自己喜欢 ...
- 手摸手带你用Hexo撸博客(一)
原文地址 手摸手带你用Hexo撸博客(一) 环境搭建 安装 node 狂点下一步 命令行输入此条命令 如果能看到版本号则安装成功 node -v 安装Git (同上) 实在不会的小伙伴百度一下,教程很 ...
- 原创 | 手摸手带您学会 Elasticsearch 单机、集群、插件安装(图文教程)
欢迎关注笔者的公众号: 小哈学Java, 每日推送 Java 领域干货文章,关注即免费无套路附送 100G 海量学习.面试资源哟!! 个人网站: https://www.exception.site/ ...
- 浅谈Java中的Condition条件队列,手摸手带你实现一个阻塞队列!
条件队列是什么?可能很多人和我一样答不出来,不过今天终于搞清楚了! 什么是条件队列 条件队列:当某个线程调用了wait方法,或者通过Condition对象调用了await相关方法,线程就会进入阻塞状态 ...
随机推荐
- C++ primer plus读书笔记——第11章 使用类
第11章 使用类 1. 运算符重载是一种形式的C++多态. 2. 不要返回指向局部变量或临时对象的引用.函数执行完毕后,局部变量和临时对象将消失,引用将指向不存在的数据. 3. 运算符重载的格式如下: ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(十二)——istio+dapr构建多运行时服务网格
多运行时是一个非常新的概念.在 2020 年,Bilgin Ibryam 提出了 Multi-Runtime(多运行时)的理念,对基于 Sidecar 模式的各种产品形态进行了实践总结和理论升华.那到 ...
- (五)Jira Api对接:修改任务状态
项目迭代结束后我们需要把sprint下面的story.task任务状态修改到结束状态,如果手动修改会花费不少时间,本文就介绍如何通过jira api自动修改任务状态,提高工作效率. 一.查看任务工作流 ...
- [bug] IDEA 右侧模块灰色
参考 https://blog.csdn.net/weixin_44188501/article/details/104717177
- tuple必须加上逗号
tuple支持 空 元组 不加逗号 >>> tup4 = () tuple非空的元组必须加上逗号>>> tup4 = (55,)>>> tup4 ...
- python发送钉钉消息
import requests import time import hashlib import hmac import base64 import re def SendMessage(messa ...
- Linux 操作系统(四)用户组管理&进程管理&任务调度
以下实例均在Centos7下验证 Centos7 查看命令帮助 man xxx 用户组管理 useradd useradd user1 password user1 cat /etc/passwd # ...
- MQTT简介-(转自cacard)
MQTT - MQ Telemetry Transport 轻量级的 machine-to-machine 通信协议. publish/subscribe模式. 基于TCP/IP. 支持QoS. ...
- 深入剖析 MySQL 自增锁
之前的文章把 InnoDB 中的所有的锁都介绍了一下,包括意向锁.记录锁...自增锁巴拉巴拉的.但是后面我自己回过头去看的时候发现,对自增锁的介绍居然才短短的一段. 其实自增锁(AUTO-INC Lo ...
- golang快速入门(五)初尝web服务
提示:本系列文章适合对Go有持续冲动的读者 初探golang web服务 golang web开发是其一项重要且有竞争力的应用,本小结来看看再golang中怎么创建一个简单的web服务. 在不适用we ...