Documentation Frappe Framework

Frappe Framework

Assets statiques

Les fichiers statiques de Frappe sont servis depuis frappe-bench/sites/assets, où le dossier public de chaque app est lié symboliquement. Cette page décrit aussi les assets propres à un site : fichiers publics et privés envoyés par les utilisateurs et sauvegardes.

2 min de lectureMis à jour le Source : docs.frappe.io

Comment Frappe sert les fichiers statiques

Cette page explique comment les assets statiques sont servis dans Frappe Framework.

Le dossier assets

Les fichiers statiques sont servis depuis le dossier frappe-bench/sites/assets. Quand vous configurez Frappe pour la production, nginx sert directement ce dossier. Toutes les URL de fichiers statiques commencent par /assets. Un fichier situé à frappe-bench/sites/assets/hero.png est accessible publiquement via l’URL /assets/hero.png.

Le dossier public de chaque app

Chaque app possède son propre dossier public, qui sert à exposer des assets statiques. Ce dossier est lié symboliquement (symlink) vers frappe-bench/sites/assets/[appname]. Voici la sortie de la commande tree sur le dossier assets :

terminal
~/frappe-bench
$ tree sites/assets -L 1
sites/assets
├── erpnext -> ~/frappe-bench/apps/erpnext/erpnext/public
└── frappe -> ~/frappe-bench/apps/frappe/frappe/public

Autrement dit, si un fichier existe à [appname]/public/images/favicon.png, il existe aussi comme lien symbolique à assets/[appname]/images/favicon.png et il est accessible publiquement via l’URL /assets/[appname]/images/favicon.png.

Assets compilés

Les assets compilés (bundled assets) sont générés dans assets/[appname]/dist/js et assets/[appname]/dist/css. Ils sont donc accessibles via une URL de la forme /assets/[appname]/dist/js/main.bundle.[hash].js.

Assets du site

En plus des fichiers statiques fournis par les apps, chaque site peut avoir ses propres fichiers statiques, issus par exemple des envois des utilisateurs ou des sauvegardes du site.

Fichiers envoyés par les utilisateurs

Les fichiers publics envoyés par les utilisateurs sont stockés dans frappe-bench/sites/[sitename]/public/files. Un fichier stocké à frappe-bench/sites/[sitename]/public/files/profile.png est accessible publiquement via l’URL /files/profile.png.

Les fichiers privés envoyés par les utilisateurs sont stockés dans frappe-bench/sites/[sitename]/private/files. Un fichier stocké à frappe-bench/sites/[sitename]/private/files/profile.png est accessible via l’URL /private/files/profile.png. Les fichiers privés ne sont accessibles que si l’utilisateur est autorisé à les consulter.

Sauvegardes

Les sauvegardes locales générées pour le site sont stockées sous la forme frappe-bench/sites/[sitename]/private/backups/20210502_182223-[sitename]-database.sql.gz. Elles sont accessibles via l’URL /backups/20210502_182223-[sitename]-database.sql.gz, uniquement si l’utilisateur est autorisé à les télécharger.

Voici la sortie de la commande ls :

terminal
~/frappe-bench
$ ls -l sites/site1.test/private/backups
total 6160
-rw-r--r-- 1 farisansari staff 2429268 May 2 18:22 20210502_182223-site1_test-database.sql.gz
-rw-r--r-- 1 farisansari staff 278 May 2 18:22 20210502_182223-site1_test-site_config_backup.json

Pages liées