beego框架总结(编写新闻发布系统)

beego框架

1.MVC架构

2.初始化文件分析

3.业务

(1)model

       ORM操作
               简单的增删改查
               高级的增删改查
                        QueryTable()
                        以下函数是基于QuertTable的返回值queryseter
                        All()
                        Filter()
                        Limit()
                        Distinct()
                        RelatedSel()
               多表操作
                        一对多
                                relatedSel
                                插入的是对象
                        多对多
                                load。。。
                                Fileter(“结构体中另外一张表的字段_ 表名 _字段名”,传的值)
                               插入
                                       插入对象,返回的是m2m
                                       获得要插入的对象
                                       m2m.add(要插入的对象)
                属性的设置
                        null
                        default
                        size
                        pk
                        auto
                        rel(fk);reverse(many)
                        rel(m2m);reverse(many)
                      时间设置
                             auto_now
                             auto_now_add
                      on_delete :多表删除的设置
               初始化的三条语句
                     设置数据库基本信息,相当于连接数据库

`orm.RegisterDataBase("default", "mysql", "root:123456@tcp(192.168.1.102:3306)/test?charset="+"utf8")`

                      映射model数据

`orm.RegisterModel(new(User),new(Article),new(ArticleType))`

                     生成表

`orm.RunSyncdb("default", true, true)`

(2)view

       视图语法
              循环
                     {{range .users}} {{.属性/$.后台传过来的数据}} {{end}}
                     {{range $index. $val := users}} {{ $val.Name}} {{end}}
              判断
                     {{if compare $.typeName .TypeName}} {{else}} {{end}}
                     视图函数
                            在视图中定义一个,{{.pageIndex | 函数名}}
                            在后台定义一个函数,要求参数类型要和传递过来的类型一致;必须有返回值
                            映射函数beego.addfuncMap(视图函数名,后台函数名)
                                   必须在beego.run之前执行

(3)controller

       作用:联动model和view期间做复杂的业务处理
       渲染
             c.Data[key] = value
             c.tplName = html文件名
             c.layout
             c.laysetions = make(map[string] string)
       重定向
              c.redirect("/资源路径",状态码)
              跳转和渲染的区别:
                     加载不需要传递数据的时候,可以用跳转
                     要传递数据只能用渲染
       获取数据,判断数据,操作数据库,返回视图
              getstring
      静态文件上传
            f,h,err := getfile(“uploadname”)
            savetofile(“uploadname”,路径)
            文件处理
                  判断大小
                  判断类型
                  防止重名

(4)额外知识点

      session
            数据临时存在服务器端
            安全性高
           浏览器关闭,数据删除
      cookie
            数据临时存储在浏览器端
            安全性低
           一段时间后,数据删除
      过滤器
            某个时候访问控制器要执行的函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值