travebing/backend/api/v1/travel_way.go

32 lines
757 B
Go

package v1
import (
"encoding/json"
"path"
"strconv"
)
type TravelWay struct {
ID int `json:"id" gorm:"autoIncrement;primaryKey"`
Plan int `json:"plan"`
Image string `json:"image" gorm:"type:char(8)"`
Lat float32 `json:"lat"`
Lon float32 `json:"lon"`
Address string `json:"address" gorm:"type:varchar(64)"`
CreatedAt int64 `json:"createdAt"`
}
func (w *TravelWay) ImagePath(dir string) string {
return path.Join(dir, strconv.Itoa(w.Plan), strconv.Itoa(w.ID) + w.Image)
}
func (w *TravelWay) ImageSrc() string {
if w.Image == "" {
return ""
}
return "/" + path.Join("img", strconv.Itoa(w.Plan), strconv.Itoa(w.ID) + w.Image)
}
func (w *TravelWay)Bytes()([]byte, error){
return json.Marshal(w)
}