Files
gh-whamp-whamp-claude-tools…/skills/pocketbase/assets/collection-schema-template.json
2025-11-30 09:06:02 +08:00

105 lines
2.0 KiB
JSON

{
"name": "CollectionName",
"type": "base",
"system": false,
"schema": [
{
"id": "field_id",
"name": "Field Name",
"type": "text",
"required": true,
"options": {
"min": 1,
"max": 200
}
},
{
"id": "text_field",
"name": "Text Field",
"type": "text",
"required": false,
"options": {
"min": 0,
"max": 1000
}
},
{
"id": "number_field",
"name": "Number Field",
"type": "number",
"required": false,
"options": {
"min": 0,
"max": 100
}
},
{
"id": "bool_field",
"name": "Boolean Field",
"type": "bool",
"required": true
},
{
"id": "email_field",
"name": "Email Field",
"type": "email",
"required": false
},
{
"id": "url_field",
"name": "URL Field",
"type": "url",
"required": false
},
{
"id": "date_field",
"name": "Date Field",
"type": "date",
"required": false
},
{
"id": "json_field",
"name": "JSON Field",
"type": "json",
"required": false
},
{
"id": "select_field",
"name": "Select Field",
"type": "select",
"required": false,
"options": {
"values": ["option1", "option2", "option3"]
}
},
{
"id": "relation_field",
"name": "Relation Field",
"type": "relation",
"required": false,
"options": {
"collectionId": "collection_id_here",
"cascadeDelete": false,
"maxSelect": 1
}
},
{
"id": "file_field",
"name": "File Field",
"type": "file",
"required": false,
"options": {
"maxSelect": 1,
"maxSize": 10485760,
"mimeTypes": ["image/jpeg", "image/png"],
"thumbs": ["100x100", "300x300"]
}
}
],
"listRule": "",
"viewRule": "",
"createRule": "@request.auth.id != ''",
"updateRule": "field = @request.auth.id",
"deleteRule": "field = @request.auth.id"
}