最近由于要写课程设计的原因,我便开始一边学习beego,一边开始用它写一个小型的管理系统。但是只有你真正的去用的时候,才会发现这个框架巨坑,他是第一个让我写出了心里阴影的框架,也是第一个让我写着写着想给文档的作者寄刀片的框架,甚至让我有种想要换种语言来写或着用原生的go来写的想法。但是,不管我如何的去喷他都挡不住他是最流行的go语言框架的事实。
在百度百科上是这么对beego进行描述的beego是一个快速开发Go应用的http框架,go 语言方面技术大牛。beego可以用来快速开发API、Web、后端服务等各种应用,是一个RESTFul的框架,主要设计灵感来源于tornado、sinatra、flask这三个框架,但是结合了Go本身的一些特性(interface、struct继承等)而设计的一个框架。可能你有些看不懂这说写什么玩意,没关系他对我们接下来将的东西没任何影响,我仅仅是想让各位了解一下他是如何牛逼的。
在开始我们先聊聊如何安装beego,由于我用的是fedora29系同,所以我只讲Linux上是如何安装的了,各位用windows的小伙办可以去官网上或其他人的博客看看,安装beego十分的简单,我就不细说了。

go语言环境的安装

yum install golang -y

安装完成之后可以通过

go env

命令查看安装的环境

 
2019-01-09_08-18.png

如果想要修改工作目录的话可以进行如下操作

vi ~/.bashrc
 

再问档的最后需要加上

export GOROOT=/usr/lib/golang     根目录可以通过上图go env查看

export PATH=$GOROOT/bin:$PATH

export GOPATH=/home/go/                   工作目录可以通过上图go env查看

export PATH=$PATH:$GOPATH/bin

修改完成后通过

source ~/.bashrc

使修改的文件立即生效
然后打开工作目录

cd /home/go/

执行如下命令

go get github.com/astaxie/beego
go get github.com/beego/bee

会发现go目录下多出几个目录bin ,pkg ,src
然后打src 目录以后所有的beego项目便都在里
如果你仅仅想创建一个简单beego项目的话
需要在/home/go/src目录下执行如下命令

bee new achievement
cd achievement
bee run achievement

在浏览器中输入http://localhost:8080/
就可以显示出来东西了
项目的目录结构如下

 
2019-01-09_08-49.png

你可以在conf文件里修改项目的端口号
如果你想创建一个API项目的话
可以执行如下命令

bee api beeapi
cd beeapi
bee run -downdoc=true -gendoc=true

在浏览器中输入http://127.0.0.1:8080/swagger/

 
2019-01-09_09-08.png

beego 的安装已经结束,从下一章节开始本小白会带领大家从基础开始写一个项目。

转自:https://www.jianshu.com/u/7b5d0066b543

beego从入门到弃坑(一)的更多相关文章

  1. jzy3D从入门到弃坑_4尝试使用jzy3D1.0画图失败

    jzy3D从入门到弃坑_4 尝试使用jzy3D1.0画图失败 觉得有用的话,欢迎一起讨论相互学习~Follow Me 记录一下使用jzy3D1.0失败 究其原因在于 本人才疏学浅,对于JAVA ope ...

  2. jzy3D从入门到弃坑_3使用jzy3D0.9画2D散点图--多条线条

    jzy3D从入门到弃坑_3 使用jzy3D0.9画2D散点图--多条线条 觉得有用的话,欢迎一起讨论相互学习~Follow Me 主要思路 将多个线条的二维数组读入Scatter对象 存入到同一个画布 ...

  3. jzy3D从入门到弃坑_2使用jzy3D0.9画2D散点图

    jzy3D从入门到弃坑_2 使用jzy3D0.9画2D散点图 觉得有用的话,欢迎一起讨论相互学习~Follow Me 在上一节中安装jzy3D 0.9版本并且运行了3D的例子 https://blog ...

  4. jzy3D安装到弃坑

    jzy3D从入门到弃坑 觉得有用的话,欢迎一起讨论相互学习~Follow Me 安装 http://www.jzy3d.org/ 官网 选择DL 选择0.9版使用,而不要使用其他版本 具体原因 高版本 ...

  5. 写个 Hello world - 前端从入坑到弃坑系列教程(1)

    这是一个系列教程<前端从入坑到弃坑>的第一篇. HTML 是什么 说白了,HTML 就是网页的内容.比如你现在正在阅读的这个网页的内容,就是 HTML.如果你还不明白,请继续往下阅读. 写 ...

  6. (暂时弃坑)(半成品)ACM数论之旅18---反演定理 第二回 Mobius反演(莫比乌斯反演)((づ ̄3 ̄)づ天才第一步,雀。。。。)

    莫比乌斯反演也是反演定理的一种 既然我们已经学了二项式反演定理 那莫比乌斯反演定理与二项式反演定理一样,不求甚解,只求会用 莫比乌斯反演长下面这个样子(=・ω・=) d|n,表示n能够整除d,也就是d ...

  7. (暂时弃坑)ACM数论之旅15---置换群与Polya定理(我把标题看成poi了,poipoipoi(*≧▽≦)ツ)

    (挖坑...) ////////////////////////////////////////////////// 暂时弃坑 开学了,有空再写....

  8. iOS端IM开发从入门到填坑

      让App聊起来 IM开发从入门到填坑Demo IM的实现方式 拿来主义,使用第三方IM服务 IM的第三方服务商国内有很多,底层协议基本上都是基于TCP的,类似有网易云信.环信.融云.极光IM.Le ...

  9. gulp-htmlone的BUG弃坑

    之前用项目用gulp-htmlone做最后的js和css内联打包出现各种问题 这次居然遇到打包后的css斜杠变反斜杠的问题 如下:/src/common/images/i_banner.jpg会被改成 ...

随机推荐

  1. Qt编写自定义控件30-颜色多态按钮

    一.前言 这个控件一开始打算用样式表来实现,经过初步的探索,后面发现还是不够智能以及不能完全满足需求,比如要在此控件设置多个角标,这个用QSS就很难实现,后面才慢慢研究用QPainter来绘制,我记得 ...

  2. PAT 甲级 1016 Phone Bills (25 分) (结构体排序,模拟题,巧妙算时间,坑点太多,debug了好久)

    1016 Phone Bills (25 分)   A long-distance telephone company charges its customers by the following r ...

  3. BTE增强

    转自https://www.cnblogs.com/Garfield/p/5313962.html Enhancement(1)--BTEs 最近一个同事碰到一个FI的增强,要用BTEs实现,我也是第 ...

  4. iOS Xib布局某些控件显示或隐藏<约束的修改>

    对于这个问题使用Masonry是很好解决的. 注意:绿色的是label2,当indexpath.section % 2 == 0时,label2不存在. 关键代码如下: if (indexPath.s ...

  5. Spring Boot Actuator:介绍和使用

    Spring Boot Actuator提供一系列HTTP端点来暴露项目信息,用来监控和管理项目.在Maven中,可以添加以下依赖: <!-- Spring boot starter: actu ...

  6. manjaro-VM虚拟机vmmon错误

    1.安装AUR : vmware-systemd-serverices 2.启动服务: systemctl enable vmware.service systemctl start vmware.s ...

  7. thinkphp5 默认配置代码

    <?php // +---------------------------------------------------------------------- // | ThinkPHP [ ...

  8. 最新 波克城市java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.波克城市等10家互联网公司的校招Offer,因为某些自身原因最终选择了波克城市.6.7月主要是做系统复习.项目复盘.Leet ...

  9. C#,CLR,IL,JIT概念 以及 .NET 家族

    C#,CLR,IL,JIT概念 以及 .NET 家族   Monitor 类通过向单个线程授予对象锁来控制对对象的访问.对象锁提供限制访问代码块(通常称为临界区)的能⼒.当 ⼀个线程拥有对象的锁时,其 ...

  10. Object类的equals方法 常用API

    boolean equals (Object obj)(return this==obj):  p1.equals(p2): 基本数据类型比较的是值      引用数据类型:默认比较的是两个对象的地址 ...