Un peu de technique

De La documentation de La Raffinerie
Aller à :navigation, rechercher

Voici quelques tips pour le développement de l'outils de gestion interne :

Ajouter une page dans le menu latéral

Cette partie est géré par du javascript et du jandgo, voici les étapes

  • créer la page exemple.html (remplacer "exemple par le nom de votre page), dans le répertoire template
  • lui assigner le code minimal pour avoir la navbar et la sidebar, le chargement des fichiers .js (prendre le code de page_vierge.html)
  • dans le fichier datas.js, ajouter une ligne dans" sidebarOptions: [" le paramétre link doit correspondre au nom de votre fichier html
  • aller dans le fichier urls.py
    • ajouter au "from .views import index, user_api, user_solo_api, ..." le nom de votre fichier
    • ajouter au "urlpatterns = [" une ligne path('exemple/', exemple, name='exemple'),
  • dans le fichier views.py
    • ajouter
             def exemple(request): 
             context = { 'name': request.user.email if request.user.is_authenticated else 'Anonymous',  }
             return render(request, 'exemple.html', context=context)

Ajouter un tableau

Ajouter un tableau se passe en deux phases :

  • dans le fichier "datas.js" faire un copier / coller d'un blocs de commande d'un tableau existant puis inscrire vos modifications, bien renseigner un nouveau titre comme par exemple "tableau_dépenses_réels"
  • dans le fichier html ou vous voulez créer ce tableau il suffit de citer le titre du tableau pour qu'il se créé ex : <div id="tableau_dépenses_réels"></div>

au niveau des paramètres du tableau nous avons :

  • total = true : ajoute "Total" en pied de tableau
  • newline = true : ajouter un "ajouter" ligne en bas de tableau


et pour les caractéristiques du type de cellules, elle se gère par des paramètres à ajouter lors de la création du tableau dans le datas.js voici les types existant :

  • pas de critères particulier, les cellules sont grisées et non modifiables
  • input: true, les cellules sont modifiables
  • shouldTotal: false et si Total=True, le total ne se fait pas sur cette colonne
  • dropdown: true,  options: ['Option 1', 'Option 2', 'Option 3'], les cellule sont à choix multiple