It sacrifices a lot of clarity, compared to the yaml version.

A `model` macro is the way to go, imho, and would e.g. let you use Nim syntax 
for that whole fields section. At the very least you could get rid of the extra 
boiler plate.
    
    
    model:
      ## this is to manage users
      type User{.cacheable.} = ref object
        id{.autoGen:ulidGenerator,notNull.}: string
        account_id{.fieldRef:Account.id.}: string
        name: string
        email{.notNull.}: string
      indices(unique=true):
        "Account User Ix 1":
          [email protected]
          other
        "Account User Ix 2":
          [email protected]
          other
    
    
    Run

Reply via email to