VEL-Connect/velconnect/migrations/1689183964_updated_Device.go

97 lines
2.0 KiB
Go

package migrations
import (
"encoding/json"
"github.com/pocketbase/dbx"
"github.com/pocketbase/pocketbase/daos"
m "github.com/pocketbase/pocketbase/migrations"
"github.com/pocketbase/pocketbase/models/schema"
)
func init() {
m.Register(func(db dbx.Builder) error {
dao := daos.New(db);
collection, err := dao.FindCollectionByNameOrId("fupstz47c55s69f")
if err != nil {
return err
}
json.Unmarshal([]byte(`[]`), &collection.Indexes)
// remove
collection.Schema.RemoveField("pphfrekz")
// remove
collection.Schema.RemoveField("vjzi0uvv")
// add
new_data := &schema.SchemaField{}
json.Unmarshal([]byte(`{
"system": false,
"id": "qxsvm1rf",
"name": "data",
"type": "relation",
"required": false,
"unique": false,
"options": {
"collectionId": "3qwwkz4wb0lyi78",
"cascadeDelete": false,
"minSelect": null,
"maxSelect": 1,
"displayFields": []
}
}`), new_data)
collection.Schema.AddField(new_data)
return dao.SaveCollection(collection)
}, func(db dbx.Builder) error {
dao := daos.New(db);
collection, err := dao.FindCollectionByNameOrId("fupstz47c55s69f")
if err != nil {
return err
}
json.Unmarshal([]byte(`[
"CREATE UNIQUE INDEX ` + "`" + `idx_jgyX3xA` + "`" + ` ON ` + "`" + `Device` + "`" + ` (` + "`" + `device_id` + "`" + `)"
]`), &collection.Indexes)
// add
del_data := &schema.SchemaField{}
json.Unmarshal([]byte(`{
"system": false,
"id": "pphfrekz",
"name": "data",
"type": "json",
"required": false,
"unique": false,
"options": {}
}`), del_data)
collection.Schema.AddField(del_data)
// add
del_device_id := &schema.SchemaField{}
json.Unmarshal([]byte(`{
"system": false,
"id": "vjzi0uvv",
"name": "device_id",
"type": "text",
"required": true,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
}`), del_device_id)
collection.Schema.AddField(del_device_id)
// remove
collection.Schema.RemoveField("qxsvm1rf")
return dao.SaveCollection(collection)
})
}