duandao3265 2015-05-03 18:32
浏览 18
已采纳

导入本地包

My project structure looks like this:

--/project
----main.go
----/models
------user.go

In main.go I want to user user.go:

user.go:

package models

type User struct {
    Name string
}

main.go:

package main

import (...)

func main() {
    user := &User{Name: "Igor"}
}

How do I import user.go from main.go?

/project is under GOPATH, so I tried:

import "project/models"

but that does nothing.

  • 写回答

2条回答 默认 最新

  • doulingqiu4349 2015-05-03 19:16
    关注

    Your setup is right, you are using the package wrong.

    change:

    user := &User{Name: "Igor"}
    

    to:

    user := &models.User{Name: "Igor"}
    

    or if you don't want to always say models.XXX, change your import to be.

    import . "project/models"
    

    I do find that doing this makes the code a bit harder to read, long term. It's obvious to the reader where "models.User" comes from, not so much with a plain "User" as normally that means it comes from this package.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 酬劳2w元求合作写文章
  • ¥15 在现有系统基础上增加功能
  • ¥15 远程桌面文档内容复制粘贴,格式会变化
  • ¥15 关于#java#的问题:找一份能快速看完mooc视频的代码
  • ¥15 这种微信登录授权 谁可以做啊
  • ¥15 请问我该如何添加自己的数据去运行蚁群算法代码
  • ¥20 用HslCommunication 连接欧姆龙 plc有时会连接失败。报异常为“未知错误”
  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图