Browse Source

session

layui
yirenyishi 6 years ago
parent
commit
892513a641
  1. 32
      controllers/NoteController.go
  2. 6
      controllers/PageController.go
  3. 3
      controllers/UserController.go
  4. BIN
      data/beeblog.db
  5. 2
      main.go
  6. 2
      models/DataInit.go
  7. 2
      models/NoteColl.go
  8. 1
      routers/NoteRouter.go
  9. 4
      service/NoteService.go
  10. 1
      views/iframe/note.html
  11. 64
      views/note.html

32
controllers/NoteController.go

@ -13,15 +13,15 @@ type NoteController struct {
}
func (this *NoteController) Save() {
pid,_ := this.GetInt64("pid")
fmt.Println("pid",pid)
pid, _ := this.GetInt64("pid")
fmt.Println("pid", pid)
title := this.GetString("title")
uid := this.GetSession("userid").(int64)
note := &models.Note{Title: title, Pid: pid, UserId: uid}
err := service.SaveNote(note)
if err == nil {
this.Data["json"] = note
this.Data["json"] = note
} else {
this.Data["json"] = models.ReurnError("保存失败")
}
@ -35,7 +35,7 @@ func (this *NoteController) SaveNoteColl() {
note := &models.NoteColl{Title: title, UserId: uid}
err := service.SaveNoteColl(note)
if err == nil {
this.Data["json"] = note
this.Data["json"] = note
} else {
this.Data["json"] = models.ReurnError("保存失败")
}
@ -52,3 +52,27 @@ func (this *NoteController) Get() {
}
this.ServeJSON()
}
func (this *NoteController) Note() {
uid := this.GetSession("userid")
fmt.Println("userid", uid)
if uid == nil {
this.Redirect("/login", 302)
}
noteColls, err := service.GetNoteColl(uid.(int64))
if err != nil {
if len(noteColls) > 0 {
for i := 0; i < len(noteColls); i++ {
notes, err1 := service.GetNoteByPid(noteColls[i].Id)
if err1 != nil {
noteColls[i].Notes = notes
}
}
}
} else {
noteColls = make([]*models.NoteColl, 0)
}
fmt.Println(noteColls)
this.Data["NoteColls"] = noteColls
this.TplName = "note.html"
}

6
controllers/PageController.go

@ -15,9 +15,3 @@ func (this *PageController) Blog() {
func (this *PageController) IframeNote() {
this.TplName = "iframe/note.html"
}
// @router /note [get]
func (this *PageController) Note() {
this.Data["IsNote"] = true
this.TplName = "note.html"
}

3
controllers/UserController.go

@ -60,8 +60,7 @@ func (this *UserController) Login() {
if userpwd == user.UserPwd {
this.Data["json"] = models.ReurnSuccess("")
this.SetSession("userid", user.Id)
tt := this.GetSession("userid").(int64)
fmt.Println(tt > 0)
fmt.Println(this.CruSession)
} else {
this.Data["json"] = models.ReurnError("用户名或密码错误")
}

BIN
data/beeblog.db

Binary file not shown.

2
main.go

@ -16,7 +16,7 @@ func init() {
func main() {
orm.Debug = true
orm.RunSyncdb("default",false,true)
beego.BConfig.WebConfig.Session.SessionOn = true
beego.Run()
}

2
models/DataInit.go

@ -19,7 +19,7 @@ func RegistDB() {
os.Create(_DB_NAME)
}
//orm.RegisterModel(new(Attachment),new(Topic))
orm.RegisterModel(new(Attachment),new(User),new(Blog),new(NLabel),new(Note))
orm.RegisterModel(new(Attachment),new(User),new(Blog),new(NLabel),new(Note),new(NoteColl))
orm.RegisterDriver(_SQLITE3_DRIVER,orm.DRSqlite)
orm.RegisterDataBase("default",_SQLITE3_DRIVER,_DB_NAME,10)
}

2
models/NoteColl.go

@ -6,4 +6,6 @@ type NoteColl struct {
Id int64
UserId int64
Title string
Notes []*Note `orm:"-"`
}

1
routers/NoteRouter.go

@ -7,6 +7,7 @@ import (
func init() {
beego.Router("/note/:id([0-9]+)", &controllers.NoteController{}, "get:Get")
beego.Router("/note", &controllers.NoteController{}, "get:Note")
beego.Router("/notecoll/save", &controllers.NoteController{}, "post:SaveNoteColl")
beego.Router("/note/save", &controllers.NoteController{}, "post:Save")
}

4
service/NoteService.go

@ -26,7 +26,7 @@ func GetNoteByPid(pid int64) ([]*models.Note, error) {
var notes []*models.Note
o := orm.NewOrm()
qs := o.QueryTable(models.Note{})
_, err := qs.Filter("Pid", pid).All(notes)
_, err := qs.Filter("Pid", pid).All(&notes)
return notes,err
}
@ -44,6 +44,6 @@ func GetNoteColl(uid int64) ([]*models.NoteColl, error) {
var notes []*models.NoteColl
o := orm.NewOrm()
qs := o.QueryTable(models.NoteColl{})
_, err := qs.Filter("UserId", uid).All(notes)
_, err := qs.Filter("UserId", uid).All(&notes)
return notes,err
}

1
views/iframe/note.html

@ -68,6 +68,7 @@
function (data) {
debugger
if (!data.Status) {
parent.addNoteCallback(data)
parent.layer.msg("保存成功", {icon: 6});
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);

64
views/note.html

@ -47,10 +47,10 @@
style="width: 25px;height: 25px;"> </span></label>
<nav>
<a href="/" target="_blank">首页</a>
<a href="http://sc.chinaz.com/">个人中心</a>
<a href="javascript:void(0)" id="newNote">新增笔记</a>
<a href="javascript:void(0)">Blog</a>
<a href="javascript:void(0)">Portfolio</a>
<a href="javascript:void(0)" id="newNoteColl">新增文件夹</a>
<a href="javascript:void(0)">删除笔记</a>
<a href="javascript:void(0)">个人中心</a>
<a href="javascript:void(0)">Shortcodes</a>
</nav>
</nav>
@ -76,21 +76,8 @@
<li><a href="javascript:void(0)">Product 4</a></li>
<li><a href="javascript:void(0)">Product 5</a></li>
</ul>
</li> <!-- item-has-children -->
</ul> <!-- cd-navigation -->
<ul class="cd-navigation cd-single-item-wrapper">
<li><a href="javascript:void(0)">新增文章</a></li>
</ul> <!-- cd-single-item-wrapper -->
<!-- cd-single-item-wrapper -->
{{/* <div class="cd-navigation socials">
<a class="cd-twitter cd-img-replace" href="javascript:void(0)">Twitter</a>
<a class="cd-github cd-img-replace" href="javascript:void(0)">Git Hub</a>
<a class="cd-facebook cd-img-replace" href="javascript:void(0)">Facebook</a>
<a class="cd-google cd-img-replace" href="javascript:void(0)">Google Plus</a>
</div>*/}}
</li>
</ul>
</nav>
<script src="/static/js/menu.js"></script> <!-- Resource jQuery -->
@ -107,19 +94,31 @@
document.onkeydown = keyDown;
function keyDown(e) {
e.preventDefault();
// e.preventDefault();
var currKey = 0, e = e || event || window.event;
currKey = e.keyCode || e.which || e.charCode;
if (currKey == 83 && (e.ctrlKey || e.metaKey)) {
layer.msg("ctrl+s")
return false;
}
}
function noteClick(id) {
layer.msg(id)
}
function addNoteCallback(obj) {
var subMenu = $(".sub-menu")
$.each(subMenu, function (index, el) {
if ($(this).attr("value") == obj.Pid) {
var child = '<li><a href="javascript:void(0)" ' + obj.Id + '>' + obj.Title + '</a></li>'
$(".sub-menu").append(child)
return
}
})
}
$(function () {
var height = document.documentElement.clientHeight
$(".w-e-text-container").height(height - 40 - 3);
@ -127,7 +126,7 @@
layer.tips('文章列表点我', '#slide-container', {
tips: [3, '#78BA32']
});
$("#newNote").click(function () {
layer.open({
type: 2,
@ -138,6 +137,31 @@
content: '/iframe/note.html' //iframe的url
});
})
$("#newNoteColl").click(function () {
layer.prompt({title: '请输入文件夹名称'}, function (val, index) {
if (val.trim().length < 3) {
layer.msg('文件夹名称最低三个字哦', function () {
});
layer.close(index);
return
}
$.post('/notecoll/save', {
title: val.trim()
},
function (data) {
debugger
if (!data.Status) {
parent.layer.msg("保存成功", {icon: 6});
var child = '<li class="item-has-children">\n' +
' <a href="javascript:void(0)">' + data.Titled + '</a>\n' +
' <ul class="sub-menu" value="' + data.Id + '"></ul>\n' +
' </li> '
$(".cd-navigation").append(child)
layer.close(index);
}
}, 'json')
});
})
})
</script>
</html>
Loading…
Cancel
Save