uAdmin Tutorial Part 5 - Register Inlines and Drop Down List (Current Progress) =============================================================================== `Back to Previous Page`_ .. _Back to Previous Page: https://uadmin-docs.readthedocs.io/en/latest/tutorial/part5.html Structure: * `models`_ * `category.go`_ * `friend.go`_ * `todo.go`_ * `main.go`_ * `uadmin.db`_ * `Categories`_ * `Friends`_ * `Todos`_ models ------ **category.go** ^^^^^^^^^^^^^^^ `Back to Top`_ .. code-block:: go package models import ( "github.com/uadmin/uadmin" ) // Category Model ! type Category struct { uadmin.Model Name string `uadmin:"required"` Icon string `uadmin:"image"` } **friend.go** ^^^^^^^^^^^^^^^ `Back to Top`_ .. code-block:: go package models import ( "github.com/uadmin/uadmin" ) // Nationality Field ! type Nationality int // Chinese ! func (Nationality) Chinese() Nationality { return 1 } // Filipino ! func (Nationality) Filipino() Nationality { return 2 } // Others ! func (Nationality) Others() Nationality { return 3 } // Friend Model ! type Friend struct { uadmin.Model Name string `uadmin:"required"` Email string `uadmin:"email"` Password string `uadmin:"password;list_exclude"` Nationality Nationality Invite string `uadmin:"link"` } // Save ! func (f *Friend) Save() { f.Invite = "https://www.google.com/" uadmin.Save(f) } **todo.go** ^^^^^^^^^^^ `Back to Top`_ .. code-block:: go package models import ( "time" "github.com/uadmin/uadmin" ) // Todo Model ! type Todo struct { uadmin.Model Name string Description string `uadmin:"html"` Category Category CategoryID uint Friend Friend `uadmin:"help:Who will be a part of your activity?"` FriendID uint TargetDate time.Time Progress int `uadmin:"progress_bar"` } main.go ------- `Back to Top`_ .. code-block:: go package main import ( // Specify the username that you used inside github.com folder "github.com/username/todo/models" "github.com/uadmin/uadmin" ) func main() { // Register Models uadmin.Register( models.Todo{}, models.Category{}, models.Friend{}, ) // Register Inlines uadmin.RegisterInlines(models.Category{}, map[string]string{ "Todo": "CategoryID", }) uadmin.RegisterInlines(models.Friend{}, map[string]string{ "Todo": "FriendID", }) uadmin.StartServer() } uadmin.db --------- **Categories** ^^^^^^^^^^^^^^ `Back to Top`_ .. image:: assets/categorymodelupdate.png **Friends** ^^^^^^^^^^^ `Back to Top`_ .. image:: assets/friendmodelupdate.png **Todos** ^^^^^^^^^ `Back to Top`_ .. _Back To Top: https://uadmin-docs.readthedocs.io/en/latest/tutorial/full_code/part5.html#uadmin-tutorial-part-5-register-inlines-and-drop-down-list-current-progress .. image:: assets/todomodelupdate.png