Skip to main content

AdminForthResourceColumnInput

Extends

Properties

_underlineType?

optional _underlineType: string

Internal type which indicates original type of column in database.

Inherited from

Omit._underlineType


allowMinMaxQuery?

optional allowMinMaxQuery: boolean

Allow AdminForth to execute SELECT min(column) and SELECT max(column) queries to get min and max values for this column. This would improve UX of filters by adding sliders for numeric columns.

NOTE: By default is option is false to prevent performance issues on large tables. If you are going to set it to true, make sure you have a one-item index on this column (one index for each column which has it) or ensure your table will not have a large number of records.

Inherited from

Omit.allowMinMaxQuery


backendOnly?

optional backendOnly: boolean

if true field will !not be passed to UI under no circumstances, but will be presented in hooks

Inherited from

Omit.backendOnly


components?

optional components: AdminForthFieldComponents

Custom components which will be used to render this field in the admin panel.

Inherited from

Omit.components


editReadonly?

optional editReadonly: boolean

Whether AdminForth will allow to edit this field in editing mode.

Inherited from

Omit.editReadonly


editingNote?

optional editingNote: object

create?

optional create: string

edit?

optional edit: string

Inherited from

Omit.editingNote


enforceLowerCase?

optional enforceLowerCase: boolean

Will automatically convert any capital letters to lowercase in input during editing

Inherited from

Omit.enforceLowerCase


enum?

optional enum: AdminForthColumnEnumItem[]

Enum of possible values for this field.

Inherited from

Omit.enum


extra?

optional extra: object

An optional configuration object for extra settings.

jsonCollapsedLevel?

optional jsonCollapsedLevel: number

How many levels of JSON should be collapsed. 0 means - root level will be already collapsed e.g. {a:1} will show {...} where '...' is clickable 1 means - root level will be shown, but next sub-level will be collapsed e.g. {a: {b: 1}} will show {a: ...} where '...' is clickable

Default is 1.

Inherited from

Omit.extra


fillOnCreate?

optional fillOnCreate: Function

Called on the backend when the record is saved to a database. Value returned by fillOnCreate will be saved to the database.

Inherited from

Omit.fillOnCreate


filterOptions?

optional filterOptions: object

debounceTimeMs?

optional debounceTimeMs: number

Decrease number of requests by adding debounce time to filter requests.

substringSearch?

optional substringSearch: boolean

If false - will force EQ operator for filter instead of ILIKE.

Inherited from

Omit.filterOptions


foreignResource?

optional foreignResource: AdminForthForeignResource

Overrides

Omit.foreignResource


inputPrefix?

optional inputPrefix: string

Prefix and suffix for input field on create and edit pages.

Inherited from

Omit.inputPrefix


inputSuffix?

optional inputSuffix: string

Inherited from

Omit.inputSuffix


isArray?

optional isArray: object

Defines whether column is array and what type of items it contains. AdminForth will use this information to render proper input fields in the admin panel with control buttons to add and remove items. If enabled, requires column type to be JSON. Cannot be used with masked columns, columns with foreignResource or primary key columns.

allowDuplicateItems?

optional allowDuplicateItems: boolean

If enabled, AdminForth will allow to add items with the same value.

enabled

enabled: boolean

itemType

itemType: AdminForthDataTypes

Type of items in array. Cannot be JSON or RICHTEXT.

Inherited from

Omit.isArray


isUnique?

optional isUnique: boolean

Whether AdminForth will request user to enter unique value during creating or editing record. This option causes AdminForth to make a request to database to check if value is unique. (Constraints are not used, so for large-tables performance make sure you have unique index in database if you set this option to true)

Inherited from

Omit.isUnique


label?

optional label: string

How column can be labled in the admin panel. Use it for renaming columns. Defaulted to column name with Uppercased first letter.

Inherited from

Omit.label


masked?

optional masked: boolean

Masked fields will be displayed as ***** on Edit and Create pages.

Inherited from

Omit.masked


max?

optional max: number

Inherited from

Omit.max


maxLength?

optional maxLength: number

Maximum length of string that can be entered in this field.

Inherited from

Omit.maxLength


maxValue?

optional maxValue: number

Maximum value that can be entered in this field.

Inherited from

Omit.maxValue


min?

optional min: number

Inherited from

Omit.min


minLength?

optional minLength: number

Minimum length of string that can be entered in this field.

Inherited from

Omit.minLength


minValue?

optional minValue: number

Minimum value that can be entered in this field.

Inherited from

Omit.minValue


name

name: string

Column name in database.

Inherited from

Omit.name


primaryKey?

optional primaryKey: boolean

Whether to use this column as record identifier. Only one column can be primary key. AdminForth tries to guess primary key automatically first.

Inherited from

Omit.primaryKey


required?

optional required: object

create?

optional create: boolean

edit?

optional edit: boolean

Inherited from

Omit.required


showIn?

optional showIn: ShowInInput


sortable?

optional sortable: boolean

Inherited from

Omit.sortable


suggestOnCreate?

optional suggestOnCreate: string | number | boolean | object

Single value that will be substituted in create form. User can change it before saving the record.

Inherited from

Omit.suggestOnCreate


type?

optional type: AdminForthDataTypes

Type of data in column. AdminForth will use this information to render proper input fields in the admin panel. AdminForth tries to guess type of data from database column type automatically for typed databases like SQL-based. However you can explicitly set it to any value. E.g. set AdminForthDataTypes.DATETIME for your string column in SQLite, which stores ISO date strings.

Inherited from

Omit.type


validation?

optional validation: ValidationObject[]

Runtime validation Regexp rules for this field.

Inherited from

Omit.validation


virtual?

optional virtual: boolean

Allows to make the field which does not exist in database table. Examples: add custom show field with user country flag:

{
label: 'Country Flag',
type: AdminForthDataTypes.STRING,
virtual: true,
showIn: {
[AdminForthResourcePages.edit]: false,
[AdminForthResourcePages.create]: false,
[AdminForthResourcePages.filter]: false,
},
components: {
show: '@@/CountryFlag.vue',
list: '@@/CountryFlag.vue',
},
}

This field will be displayed in show and list views with custom component CountryFlag.vue. CountryFlag.vue should be placed in custom folder and can be next:

<template>
{{ getFlagEmojiFromIso(record.ipCountry) }}
</template>

<script setup>
const props = defineProps(['record']);

function getFlagEmojiFromIso(iso) {
return iso.toUpperCase().replace(/./g, (char) => String.fromCodePoint(char.charCodeAt(0) + 127397));
}
</script>

Inherited from

Omit.virtual