Giter Club home page Giter Club logo

orm's Introduction

Programme de gestion de bibliothèque

Jean Vanneste

Initialisation

  1. Installer mysql ou mariadb sur le serveur
sudo apt install mysql
  1. Créer un utilisateur admin avec comme mot de passe password (Si vous souhaitez utiliser un autre profil, il suffit de modifier config_db.json)
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON *.* TO 'admin'@'localhost';
  1. Créer la base de donnée library (ou autre à préciser dans config_db.json)
CREATE DATABASE library;
  1. Installer les bibliothèques python requise
pip3 install -r requirement.txt
  1. Créer le schéma avec library.sql ou le script populate_db.py
mysql -p library < library.sql

ou

python3 populate_db.py

Utilisation

Le script interface.py permet de rajouter facilement de nouveaux éléments à la base de données. Il faut cependant faire attention à bien rajouter les éléments dans l'ordre.

Pour créer un collection, son éditeur doit exister dans la db. Pour créer un livre, sa collection et au moins un auteur doivent exister dans la db.

Un livre peut avoir plusieurs auteurs et un auteur peut avoir écrit plusieurs livres.

On ne peut indiquer qu'un seul auteur à la création d'un livre mais il est possible d'ajouter les auteurs restants par la suite.

Fonctionnement

  • Le fichier database.py décrit la structure de la base de donnée. Elle permet de recréer les tables si celles sont inexistante dans la base de donnée et de créer les contraintes de clés étrangère. Elle mappe aussi les objets de l'application au données contenues dans la base.
  • Le fichier ORM.py contient les différentes fonctions pour créer et interagir avec la base de données.
  • Le fichier populate_db.py utilise ORM.py pour remplir quelques lignes des tables.
  • Le fichier interface.py est un script permettant un remplissage user-friendly de la base de données

Schéma de la base de données

schema de la db

orm's People

Contributors

jeanvanneste avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.