C'est donc un site Web que j'ai créé en tant que projet parallèle pour explorer mes connaissances en matière de développement Web et de Django (vous comprendrez à quel point j'étais débutant en lisant le dossier, le nom de l'application du projet) et je voulais qu'un projet soit prêt - > déployé. C'est pourquoi j'ai pensé créer quelque chose qui aurait des outils tels que des calculatrices, des traducteurs, des convertisseurs. Et à l'époque, j'étais en deuxième année de mon université, j'avais une matière DSA, donc j'apprenais à travers elle et j'ajoutais divers outils sur le site Web. Exemples : - calculateur de suffixe, calculateur de préfixe, etc.
Enfin, calcont.in est un site Web qui contient divers outils tels que des calculatrices, des convertisseurs, des analyseurs basés sur l'IA et des traducteurs qui peuvent aider les gens à gagner du temps dans la vie de tous les jours. Nous avons >= 15 000 visiteurs qui investissent leur temps précieux sur ce site Web en un mois et environ 500 à 600 utilisateurs par jour.
Tout d’abord, vous devez créer un environnement virtuel Python.(ref)
Pour les fenêtres,
python3 -m venv venv_name
puis allez dans ce répertoire où se trouve venv
cd venv_name
fork puis cloner le projet calcont.in
git clone [email protected]:calcont/calcont.in.git
activer le venv
.Scriptsactivate
aller sur calcont.in
cd calcont.in
installez tous les packages python mentionnés dans exigences.txt
pip install -r requirements.txt
créez .env dans le répertoire racine et ajoutez
SECRET_KEY=anystring
client_secret_captcha=anystring
comme cette application comprend quelques schémas de base de données qui doivent être migrés, exécutez
python manage.py migrate
exécuter le serveur Django
python manage.py runserver
Une fois votre configuration terminée, vous devez comprendre le flux de travail du projet.
basicsite
est la racine ou nous pouvons dire le nom principal du projet, qui contient des fichiers essentiels tels que urls.py
, views.py
, settings.py
etc. Comme, le framework Django suit MVT
c'est-à-dire la structure du modèle de vue modèle pour gérer les requêtes sur le serveur. Il existe un dossier appelé settings
dans lequel se trouvent 3 fichiers principaux, à savoir dev.py
, prod.py
, base.py
.
base.py
comprend tous les paramètres communs pour dev.py et prod.pydev.py
comprend les paramètres de développement et les informations d'identificationprod.py
comprend toutes les configurations liées à Heroku et certaines informations d'identification de production urls.py a plusieurs modèles d'URL tels que social_auth
pour gérer la connexion sociale, admin
et très important est mysite.url
qui gère essentiellement toutes les URL et demande des informations.
Il s'agit essentiellement d'une application principale de calcont qui contient des dossiers importants, des fichiers tels que des modèles, all_urls, all_views, etc.
models.py
- Il se compose d'un schéma de base de données, de relations entre différentes entités et d'attributs en dessous.templates
- Les modèles se composent de tous les fichiers HTML et chaque catégorie a un dossier différent contenant les fichiers HTML de tous les outils, classés sous les calculatrices, les convertisseurs, etc.all_urls
- C'est un dossier qui contient différents fichiers URL et ces fichiers urls.py encore différents pour différentes catégories. Lorsqu'un utilisateur demande une URL, il accède d'abord au site de base, c'est-à-dire à l'application racine, puis à l'application mysite dans laquelle la logique permettant de gérer la demande est écrite dans les vues.all_views
- Il s'agit d'un dossier qui contient des fichiers de vues pour toutes les catégories dans lesquels la logique est écrite ici, comme le fichier HTML à afficher pour une demande particulière, ainsi que la gestion de la demande de publication et d'obtention, la soumission du formulaire et l'enregistrement des détails dans la base de données, etc. est écrit ici. Les demandes de tirage sont les bienvenues. Pour les changements majeurs, veuillez d'abord ouvrir un problème ou vous pouvez créer un nouveau sujet de discussion pour discuter de ce que vous souhaitez changer.
Veuillez vous assurer de mettre à jour les tests le cas échéant.
APACHE2.0