id | id | Primary key |
attribute_type | string | The morph map name of the model type that can use this attribute, e.g. product |
attribute_group_id | foreignId | The associated attribute group |
position | integer | Sort order within the attribute group |
name | json | Translated name, e.g. {"en": "Screen Size"} |
description | json nullable | Translated description |
handle | string | Kebab-cased reference, e.g. screen-size. Unique per attribute_type |
section | string nullable | An optional label to define where an attribute should be used in the UI |
type | string | The field type class, e.g. Lunar\FieldTypes\Number |
required | boolean | Whether a value must be provided |
default_value | string nullable | Default value for the attribute |
configuration | json | Field-type-specific configuration stored as a collection |
system | boolean | If true, the attribute should not be deleted |
validation_rules | string nullable | Laravel validation rules, e.g. required|max:255 |
filterable | boolean | Whether the attribute can be used for filtering (default false) |
searchable | boolean | Whether the attribute is included in search indexing (default true) |
created_at | timestamp | |
updated_at | timestamp | |