mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Added getDashboardSlugById api
This commit is contained in:
parent
9dd6aefcec
commit
66621d762e
@ -200,6 +200,7 @@ func Register(r *macaron.Macaron) {
|
|||||||
r.Get("/home", GetHomeDashboard)
|
r.Get("/home", GetHomeDashboard)
|
||||||
r.Get("/tags", GetDashboardTags)
|
r.Get("/tags", GetDashboardTags)
|
||||||
r.Post("/import", bind(dtos.ImportDashboardCommand{}), wrap(ImportDashboard))
|
r.Post("/import", bind(dtos.ImportDashboardCommand{}), wrap(ImportDashboard))
|
||||||
|
r.Get("/id/:id", GetDashboardSlugById)
|
||||||
})
|
})
|
||||||
|
|
||||||
// Dashboard snapshots
|
// Dashboard snapshots
|
||||||
|
@ -204,3 +204,17 @@ func GetDashboardTags(c *middleware.Context) {
|
|||||||
|
|
||||||
c.JSON(200, query.Result)
|
c.JSON(200, query.Result)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetDashboardSlugById(c *middleware.Context) {
|
||||||
|
dashId := c.ParamsInt64(":id")
|
||||||
|
query := m.GetDashboardSlugByIdQuery{Id: dashId}
|
||||||
|
err := bus.Dispatch(&query)
|
||||||
|
if err != nil {
|
||||||
|
c.JsonApiErr(500, "Failed to get slug from database", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
slug := dtos.DashboardSlug{Slug: query.Result}
|
||||||
|
|
||||||
|
c.JSON(200, &slug)
|
||||||
|
}
|
||||||
|
@ -57,6 +57,10 @@ type DashboardFullWithMeta struct {
|
|||||||
Dashboard *simplejson.Json `json:"dashboard"`
|
Dashboard *simplejson.Json `json:"dashboard"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type DashboardSlug struct {
|
||||||
|
Slug string `json:"slug"`
|
||||||
|
}
|
||||||
|
|
||||||
type DataSource struct {
|
type DataSource struct {
|
||||||
Id int64 `json:"id"`
|
Id int64 `json:"id"`
|
||||||
OrgId int64 `json:"orgId"`
|
OrgId int64 `json:"orgId"`
|
||||||
|
@ -148,3 +148,8 @@ type GetDashboardsQuery struct {
|
|||||||
DashboardIds []int64
|
DashboardIds []int64
|
||||||
Result *[]Dashboard
|
Result *[]Dashboard
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type GetDashboardSlugByIdQuery struct {
|
||||||
|
Id int64
|
||||||
|
Result string
|
||||||
|
}
|
||||||
|
@ -18,6 +18,7 @@ func init() {
|
|||||||
bus.AddHandler("sql", DeleteDashboard)
|
bus.AddHandler("sql", DeleteDashboard)
|
||||||
bus.AddHandler("sql", SearchDashboards)
|
bus.AddHandler("sql", SearchDashboards)
|
||||||
bus.AddHandler("sql", GetDashboardTags)
|
bus.AddHandler("sql", GetDashboardTags)
|
||||||
|
bus.AddHandler("sql", GetDashboardSlugById)
|
||||||
}
|
}
|
||||||
|
|
||||||
func SaveDashboard(cmd *m.SaveDashboardCommand) error {
|
func SaveDashboard(cmd *m.SaveDashboardCommand) error {
|
||||||
@ -255,3 +256,17 @@ func GetDashboards(query *m.GetDashboardsQuery) error {
|
|||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetDashboardSlugById(query *m.GetDashboardSlugByIdQuery) error {
|
||||||
|
dashboard := m.Dashboard{Id: query.Id}
|
||||||
|
has, err := x.Get(&dashboard)
|
||||||
|
query.Result = dashboard.Slug
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
} else if has == false {
|
||||||
|
return m.ErrDashboardNotFound
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user