posts.go 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package tables
  2. import (
  3. "github.com/GoAdminGroup/go-admin/modules/db"
  4. "github.com/GoAdminGroup/go-admin/plugins/admin/modules/table"
  5. "github.com/GoAdminGroup/go-admin/template"
  6. "github.com/GoAdminGroup/go-admin/template/types"
  7. "github.com/GoAdminGroup/go-admin/template/types/form"
  8. editType "github.com/GoAdminGroup/go-admin/template/types/table"
  9. )
  10. // GetPostsTable return the model of table posts.
  11. func GetPostsTable() (postsTable table.Table) {
  12. postsTable = table.NewDefaultTable(table.DefaultConfig())
  13. info := postsTable.GetInfo()
  14. info.AddField("ID", "id", db.Int).FieldSortable()
  15. info.AddField("Title", "title", db.Varchar)
  16. info.AddField("AuthorID", "author_id", db.Varchar).FieldDisplay(func(value types.FieldModel) interface{} {
  17. return template.Default().
  18. Link().
  19. SetURL("/admin/info/authors/detail?__goadmin_detail_pk=100").
  20. SetContent("100").
  21. OpenInNewTab().
  22. SetTabTitle("Author Detail").
  23. GetContent()
  24. })
  25. info.AddField("Description", "description", db.Varchar)
  26. info.AddField("Content", "content", db.Varchar).FieldEditAble(editType.Textarea)
  27. info.AddField("Date", "date", db.Varchar)
  28. info.SetTable("posts").SetTitle("Posts").SetDescription("Posts")
  29. formList := postsTable.GetForm()
  30. formList.AddField("ID", "id", db.Int, form.Default).FieldNotAllowEdit().FieldNotAllowAdd()
  31. formList.AddField("Title", "title", db.Varchar, form.Text)
  32. formList.AddField("Description", "description", db.Varchar, form.Text)
  33. formList.AddField("Content", "content", db.Varchar, form.Text)
  34. formList.AddField("Date", "date", db.Varchar, form.Datetime)
  35. formList.SetTable("posts").SetTitle("Posts").SetDescription("Posts")
  36. return
  37. }