Skip to content

Commit 58d9dc3

Browse files
committed
docs: suggestOnCreate
1 parent dcfd025 commit 58d9dc3

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

adminforth/documentation/docs/tutorial/03-Customization/13-standardPagesTuning.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,14 @@ export default {
225225
{
226226
name: 'created_at',
227227
type: AdminForthDataTypes.DATETIME,
228+
//diff-add
229+
showIn: {
230+
//diff-add
231+
all: true,
232+
//diff-add
233+
create: false, // don't show field in create form
234+
//diff-add
235+
}
228236
//diff-add
229237
fillOnCreate: ({ initialRecord, adminUser }) => (new Date()).toISOString(),
230238
},
@@ -245,6 +253,14 @@ export default {
245253
{
246254
name: 'created_by',
247255
type: AdminForthDataTypes.STRING,
256+
//diff-add
257+
showIn: {
258+
//diff-add
259+
all: true,
260+
//diff-add
261+
create: false, // don't show field in create form
262+
//diff-add
263+
}
248264
//diff-add
249265
fillOnCreate: ({ initialRecord, adminUser }) => adminUser.dbUser.id,
250266
},
@@ -256,6 +272,32 @@ export default {
256272

257273
> Same effect can be achieved by using [hooks](/docs/tutorial/Customization/hooks/#example-modify-the-created-object-before-it-is-saved-to-the-database). But `fillOnCreate` might be shorter and more readable.
258274
275+
### Suggest default value in create form
276+
277+
You can suggest a default value for a field in the create form which user can instantly change even before creating record.
278+
This might be used to give user some example value or to suggest some default value.
279+
280+
```typescript title="./resources/apartments.ts"
281+
export default {
282+
name: 'apartments',
283+
fields: [
284+
...
285+
{
286+
name: 'description',
287+
//diff-add
288+
suggestOnCreate: 'Great apartment in the heart of the city',
289+
},
290+
],
291+
},
292+
...
293+
```
294+
295+
A difference between `fillOnCreate` and `suggestOnCreate`:
296+
297+
* `fillOnCreate` is called on the backend when the record is saved to a database. Value returned by `fillOnCreate` will be saved to the database.
298+
* `suggestOnCreate` is just a single value that will be substituted in create form. User can change it before saving the record.
299+
* `fillOnCreate` should be used when `showIn.create` is a `false` value because if it is `true`, the input will be shown in the create form but then(during actual save to db) it will be overwritten by the value returned by `fillOnCreate`.
300+
* `suggestOnCreate` should be used with `showIn.create` set to true because if it is not set, the input will not be shown in the create form and default suggestion will not make sense.
259301

260302
### Link to create form with preset values
261303

0 commit comments

Comments
 (0)