codegen: skip generating ID type for "without rowid" tables

This commit is contained in:
wispem-wantex 2026-02-15 20:49:13 +00:00
parent 85d544152f
commit b0d95c5948

View File

@ -43,10 +43,7 @@ var generate_model = &cobra.Command{
file2 := modelgenerate.GenerateModelTestAST(table, modname) file2 := modelgenerate.GenerateModelTestAST(table, modname)
PanicIf(printer.Fprint(os.Stdout, fset, file2)) PanicIf(printer.Fprint(os.Stdout, fset, file2))
} else { } else {
file := &ast.File{ decls := []ast.Decl{
Name: ast.NewIdent("db"), // TODO: parameterize
Decls: []ast.Decl{
&ast.GenDecl{ &ast.GenDecl{
Tok: token.IMPORT, Tok: token.IMPORT,
Specs: []ast.Spec{ Specs: []ast.Spec{
@ -66,14 +63,22 @@ var generate_model = &cobra.Command{
}, },
}, },
}, },
modelgenerate.GenerateIDType(table), }
if !table.IsWithoutRowid {
decls = append(decls, modelgenerate.GenerateIDType(table))
}
decls = append(decls,
modelgenerate.GenerateModelAST(table), modelgenerate.GenerateModelAST(table),
modelgenerate.GenerateSQLFieldsConst(table), modelgenerate.GenerateSQLFieldsConst(table),
modelgenerate.GenerateSaveItemFunc(table), modelgenerate.GenerateSaveItemFunc(table),
modelgenerate.GenerateDeleteItemFunc(table), modelgenerate.GenerateDeleteItemFunc(table),
modelgenerate.GenerateGetItemByIDFunc(table), modelgenerate.GenerateGetItemByIDFunc(table),
modelgenerate.GenerateGetAllItemsFunc(table), modelgenerate.GenerateGetAllItemsFunc(table),
}, )
file := &ast.File{
Name: ast.NewIdent("db"), // TODO: parameterize
Decls: decls,
} }
PanicIf(printer.Fprint(os.Stdout, fset, file)) PanicIf(printer.Fprint(os.Stdout, fset, file))