mirror of
https://github.com/cubixle/tuugen.git
synced 2026-04-24 21:24:42 +01:00
wip
This commit is contained in:
35
db.go
35
db.go
@@ -1,5 +1,11 @@
|
||||
package tuugen
|
||||
|
||||
import (
|
||||
"html/template"
|
||||
"path/filepath"
|
||||
"os"
|
||||
)
|
||||
|
||||
type DataModel struct {
|
||||
Name string `yaml:"name"`
|
||||
Properties []DataProperty `yaml:"properties"`
|
||||
@@ -12,12 +18,25 @@ type DataProperty struct {
|
||||
}
|
||||
|
||||
func GenerateDataModels(cfg Config) error {
|
||||
t, err := template.ParseFS(FS, "templates/data_model.go.tmpl")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for _, dm := range cfg.DataModels {
|
||||
t, err := template.ParseFS(FS, "templates/data_model.go.tmpl")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
outputFile := "internal/data/models.go"
|
||||
// check/create file path
|
||||
fp := filepath.Dir(outputFile)
|
||||
}
|
||||
outputFile := "internal/data/models.go"
|
||||
fp := filepath.Dir(outputFile)
|
||||
if err := os.MkdirAll(fp, 0777); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
f, err := os.Create(outputFile)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
if err := t.Execute(f, dm); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user