Adapter Development

The role of the adapter is to achieve the conversion of the web framework context and GoAdmin's own context. To make a Adapter, you need implemente three methods:

package adapter

import (
// WebFrameWork is an interface which is used as an adapter of
// framework and goAdmin. It must implement two methods. Use registers
// the routes and the corresponding handlers. Content writes the
// response to the corresponding context of framework.
type WebFrameWork interface {
    // Name return the web framework name.
    Name() string

    // Use method inject the plugins to the web framework engine which is the
    // first parameter.
    Use(app interface{}, plugins []plugins.Plugin) error

    // Content add the panel html response of the given callback function to
    // the web framework context which is the first parameter.
    Content(ctx interface{}, fn types.GetPanelFn, navButtons ...types.Button)

    // User get the auth user model from the given web framework context.
    User(ctx interface{}) (models.UserModel, bool)

    // AddHandler inject the route and handlers of GoAdmin to the web framework.
    AddHandler(method, path string, handlers context.Handlers)


    Static(prefix, path string)

    // Helper functions
    // ================================

    SetApp(app interface{}) error
    GetConnection() db.Connection
    SetContext(ctx interface{}) WebFrameWork
    GetCookie() (string, error)
    Path() string
    Method() string
    FormParam() url.Values
    IsPjax() bool
    Write(body []byte)
    CookieKey() string
    HTMLContentType() string