beego注解路由

April · 2018-04-08 23:13:26 · 5304 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2018-04-08 23:13:26 的主题,其中的信息可能已经有所发展或是发生改变。

按照beego官方文档 注解路由 尝试写的路由,但是确实报错的:goland提示:unresolved type CMSController cms.go中的代码

package controllers

import (
    "github.com/astaxie/beego"
)

// CMSController operations for CMS
type CMSController struct {
    beego.Controller
}

// URLMapping ...
func (c *CMSController) URLMapping() {
    c.Mapping("StaticBlock", c.StaticBlock)
    c.Mapping("AllBlock", c.AllBlock)
}

// @router /staticblock/:key [get]
func (this *CMSController) StaticBlock() {

}

// @router /all/:key [get]
func (this *CMSController) AllBlock() {

}

router.go中的代码:

package routers

import (
    "quickstart/controllers"
    "github.com/astaxie/beego"
    "github.com/astaxie/beego/context"
)

func init() {
    beego.Router("/", &controllers.MainController{})
    beego.Get("/base", func(ctx *context.Context) {
        ctx.Output.Body([]byte("hello world"))
    })

    beego.Post("/alice", func(ctx *context.Context) {
        ctx.Output.Body([]byte("bob"))
    })

    beego.Any("/foo", func(ctx *context.Context) {
        ctx.Output.Body([]byte("bar"))
    })

    beego.Include(&CMSController{})
}

完全照抄beego这节内容的代码,但是还是报这个错误 bee run 的时候,也报错:

routers/router.go:23:17: undefined: CMSController
2018/04/08 23:12:08 ERROR    ▶ 0003 Failed to build the application: # quickstart/routers
routers/router.go:23:17: undefined: CMSController

请问这个错误,应该怎么解决? 还是说,注解路由只支持API类的项目?


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

5304 次点击  
加入收藏 微博
3 回复  |  直到 2018-09-14 19:46:39
Juncheng-Hu
Juncheng-Hu · #1 · 7年之前

你没有其他的controller,把其他的controller去掉

tansuo1989
tansuo1989 · #2 · 7年之前
 beego.Include(&CMSController{})
//改成
 beego.Include(&controllers.CMSController{})
skingorz
skingorz · #3 · 7年之前

我也遇到这个问题,我的解决办法是在控制台输入go env,然后将项目建立在控制台输出的gopath里,不知道为什么修改不了这个的gopath

添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传