brew install openldap Créer un environnement virtuel et cd
python3 -m venv ENV
cd ENV
Clone Repo à un sous-répertoire (Ex. git clone REPO_URL src )
Activer l'environnement virtuel
source bin/activate
cd à nouveau répertoire SRC et exigences d'installation
cd src
pip install -r requirements.txt
Remarque: Si pip install renvoie un bloc de texte d'erreur, y compris fatal error: 'sasl.h' file not found lors de l'installation python-ldap , procédez comme suit:
Dans exigences.txt, commentez l'exigence python-ldap .
Re-Run pip install -r requirements.txt . Il devrait se terminer avec succès.
Exécutez ce qui suit, remplaçant "Version" par le numéro de version spécifié pour le package python-ldap dans les exigences.txt:
pip install python-ldap==VERSION
--global-option=build_ext
--global-option="-I$(xcrun --show-sdk-path)/usr/include/sasl"
Défendez-vous l'exigence python-ldap dans exigences.txt et enregistrez le fichier.
Configurer les paramètres locaux à l'aide du fichier par paramètres_local.trempl.py
Configurez Static_files / static / robots.txt en utilisant static_files / static / robots.templ.txt
Exécutez la commande de déploiement: python manage.py deploy . Cela exécute toutes les migrations et collecte les fichiers statiques.
Créer un superutiliser: python manage.py createsuperuser
Si vous n'avez pas l'intention d'importer des données de calendrier existantes, créez un calendrier principal et attribuez votre compte SuperUser en tant que propriétaire. Sinon, sautez cette étape
python manage.py shell
>>> from django.contrib.auth.models import User
>>> from events.models import Calendar
>>> u = User.objects.get(pk=1)
>>> c = Calendar(title='Events at UCF', owner=u)
>>> c.save()
>>> exit()
Notez que cet importateur ne doit être exécuté que sur une nouvelle base de données, immédiatement après l'exécution python manage.py syncdb ou python manage.py flush .
Avant d'exécuter cette importation, assurez-vous qu'un nouvel utilisateur a été créé dans Django pour chaque utilisateur non basé sur NID dans le système UNT. Les événements de ces utilisateurs ne parviendront pas à importer autrement.
CD au nouveau dossier SRC environnement virtuel
Activer l'environnement virtuel
source ../bin/activate
Ajoutez des informations sur la base de données d'anciennes événements à paramètres_local.py sous les bases de données noms «unlevents». Assurez-vous que l'activation_clearcache est définie sur «false».
Exécuter la commande d'importation
python manage.py import-unl-events
Redémarrez l'application
Interdire le cache si nécessaire
CD au nouveau dossier SRC environnement virtuel
Activer l'environnement virtuel
source ../bin/activate
Assurez-vous que Maps_domain et Location_Data_Url sont définis dans Settings_Local.py, et que les activités activées est définie sur «False».
Exécuter la commande d'importation
python manage.py import-locations
Redémarrez l'application
Interdire le cache si nécessaire
Ne vous engagez jamais directement à Master. Créez une branche ou une fourche et travaillez sur la nouvelle fonctionnalité. Une fois qu'il est terminé, il sera fusionné à la branche maître.
Si vous utilisez une branche pour développer une fonctionnalité, assurez-vous de supprimer l'ancienne branche une fois qu'elle a été fusionnée pour maîtriser.
Ce projet utilise Gulp pour gérer diverses tâches, telles que la compilation et la réduction des fichiers SASS et le JavaScript minimisant / uglificateur. Utilisez les étapes suivantes pour configurer Gulp pour ce projet.
npm install à partir du répertoire racine pour installer les packages de nœuds définis dans package.json.gulp-config.template.json , apporter toutes les modifications souhaitées et enregistrer sous gulp-config.json .gulp default pour installer tous les composants frontaux et compiler les actifs statiques.gulp watch pendant le développement pour détecter automatiquement les modifications de fichiers statiques. Lorsqu'une modification est détectée, les commandes de minification et de compilation s'exécuteront automatiquement. Si vous avez activé BrowsersSync dans gulp-config.json , il rechargera également votre navigateur lorsque les fichiers SCSS ou JS changent.static_files/static/ ) sont poussés vers le repo lors des modifications des fichiers statiques. Tous les styles personnalisés bruts pour ce projet sont contenus dans des fichiers SASS distincts dans static_files/assets/scss/ . Lors de la modification deshets de styles dans ce projet, modifiez uniquement les fichiers dans ce répertoire; Ne modifiez pas les fichiers dans static_files/static/css/ directement ! Les fichiers SASS compilent et écrivent dans ce répertoire.
Les fichiers SASS partiels sont généralement séparés par fonction et doivent être compilés dans un ordre spécifique.
Ce projet combine les bibliothèques JavaScript des fournisseurs avec nos propres fichiers, si moins de fichiers doivent être livrés au client. La liste ci-dessous présente le schéma de concaténation / uglification de base.
Les scripts marqués *vendor* sont récupérés sous forme de packages NPM et concaténés en fichiers de projet qui les incluent pendant le traitement Gulp.
Les scripts marqués *project* sont des scripts maintenus par ce projet et peuvent trouver dans static_files/assets/js . Ne modifiez pas les fichiers dans static_files/static/js/ directement .
En plus des scripts énumérés ci-dessus, la bibliothèque TinyMCE est copiée dans son propre sous-répertoire, static_files/static/js/wysiwyg , pendant le traitement de Gulp. TinyMCE, par défaut, s'attend à ce que ses thèmes, plugins et skins soient dans des sous-répertoires par rapport au répertoire racine du script TinyMCE principal, nous maintenons donc la structure du répertoire aussi étroitement que possible tout en choisissant uniquement les plugins / skins / thèmes spécifiques nécessaires pour le système d'événements pour éviter la blondon dans le repo.
Nous appliquons également des personnalisations sur la peau de TinyMCE par défaut, "Lightgray", une fois que son répertoire a terminé la copie du répertoire des composants. Ces personnalisations doivent être modifiées dans static_files/assets/scss/content.scss .