mirror of
https://github.com/vlang/v.git
synced 2025-08-03 17:57:59 -04:00
This commit is contained in:
parent
4c14e8e8de
commit
dd063faf65
@ -1,8 +1,14 @@
|
||||
import db.sqlite
|
||||
|
||||
struct Child {
|
||||
id int @[primary; serial]
|
||||
parent_id int
|
||||
}
|
||||
|
||||
struct PlainNoArg {
|
||||
id int @[primary; serial; sql: 'custom_id']
|
||||
name string
|
||||
id int @[primary; serial; sql: 'custom_id']
|
||||
name string
|
||||
children []Child @[fkey: 'parent_id']
|
||||
}
|
||||
|
||||
fn test_plain_no_arg() {
|
||||
@ -33,6 +39,26 @@ fn test_plain_no_arg() {
|
||||
assert rows[0].name == 'second'
|
||||
}
|
||||
|
||||
fn test_plain_no_arg_with_children() {
|
||||
mut db := sqlite.connect(':memory:')!
|
||||
|
||||
parent := PlainNoArg{
|
||||
children: [Child{}, Child{}]
|
||||
}
|
||||
|
||||
sql db {
|
||||
create table Child
|
||||
create table PlainNoArg
|
||||
insert parent into PlainNoArg
|
||||
}!
|
||||
|
||||
parents := sql db {
|
||||
select from PlainNoArg limit 1
|
||||
}!
|
||||
|
||||
assert parent.children.len == parents[0].children.len
|
||||
}
|
||||
|
||||
struct SqlSerial {
|
||||
id int @[primary; sql: serial]
|
||||
name string
|
||||
|
@ -331,8 +331,8 @@ fn (mut g Gen) write_orm_insert_with_last_ids(node ast.SqlStmtLine, connection_v
|
||||
|
||||
primary_field := g.get_orm_struct_primary_field(fields) or { ast.StructField{} }
|
||||
|
||||
is_serial := primary_field.attrs.contains_arg('sql', 'serial')
|
||||
&& primary_field.typ == ast.int_type
|
||||
is_serial := (primary_field.attrs.contains_arg('sql', 'serial')
|
||||
|| primary_field.attrs.contains('serial')) && primary_field.typ == ast.int_type
|
||||
|
||||
mut inserting_object_type := ast.void_type
|
||||
mut member_access_type := '.'
|
||||
|
Loading…
x
Reference in New Issue
Block a user