to select ↑↓ to navigate
Frappe Framework

Frappe Framework

Open in ChatGPT
Ask ChatGPT about this page
Open in Claude
Ask Claude about this page

Ontwikkelaars

Ontwikkelaars

Frappe-apps maken betekent Python + JavaScript + JSON schrijven. Het platform regelt frameworkzaken (auth, DB, UI-rendering, API); uw app levert de domeinlogica.

App-structuur

my_app/
├── my_app/
│   ├── hooks.py           # Wire up doc_events, fixtures, web routes
│   ├── install.py         # after_install, after_migrate
│   ├── modules.txt
│   ├── my_module/
│   │   ├── doctype/       # Uw DocTypes (één map per stuk)
│   │   ├── custom/        # Hook-handlers voor DocTypes van andere apps
│   │   ├── report/
│   │   └── workspace/
│   └── public/            # JS, CSS, images
├── pyproject.toml
└── setup.py

Belangrijke uitbreidingspunten (hooks.py)

Hook Gebruik
doc_events Reageer op lifecycle-events van elk DocType (validate, on_submit, on_cancel)
doctype_js Injecteer client-side scripts op specifieke DocType-formulieren
scheduler_events Draai code op cron-schema's (uurlijks, dagelijks, custom cron)
permission_query_conditions Filter lijstweergaven met eigen permissie-logica
override_doctype_class Vervang de controller van een DocType door uw eigen
fixtures Lever referentiedata mee (Rollen, Workspaces, Custom Fields)

DocType-lifecycle

class MyDoc(Document):
	def before_insert(self): ...    # Voor eerste opslag
	def validate(self): ...          # Voor elke opslag
	def on_update(self): ...         # Na opslag
	def before_submit(self): ...     # Voor indienen
	def on_submit(self): ...         # Na indienen
	def on_cancel(self): ...         # Na annuleren
	def on_trash(self): ...          # Voor verwijdering

Verder lezen

Last updated 3 days ago
Was this helpful?
Thanks!