diff --git a/cabana/crud.go b/cabana/crud.go index 09b3d03..c5a2fa0 100644 --- a/cabana/crud.go +++ b/cabana/crud.go @@ -644,7 +644,9 @@ func mergedRules(cc *CompiledController, model any) map[string]string { return out } for _, field := range cc.Form.Fields { - if field.Required { + // Relation fields are not writable columns. required stays on the + // schema for the client, but it cannot be checked by Fill. + if field.Required && scalarFormField(field.Type) { out[field.Name] = mergeRequired(out[field.Name]) } }