www.pythonanywhere.com Djangohkp
django-admin startproject mysite . .Installe Django dans le répertoire courant
編集したファイル:settings.py Changer de fuseau horaire TIME_ZONE = 'Asia/Tokyo'
Changement de langue LANGUAGE_CODE = 'ja'
Ajouter un chemin de fichier statique STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, 'static')
Ajouter pythonanywhere.com à l'hôte ALLOWED_HOSTS = ['127.0.0.1', '.pythonanywhere.com']
Lorsque DEBUG est défini sur True et ALLOWED_HOSTS est une liste vide, la vérification est automatiquement effectuée pour les trois hôtes ['localhost', '127.0.0.1', '[:: 1]']. Je vais. Ce paramètre n'inclut pas le nom d'hôte PythonAnywhere que nous sommes sur le point de déployer et d'utiliser.
SQlite3 est défini par défaut DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } Exécutez la commande suivante sur la console python manage.py migrate
python manage.py runserver
Vérifiez la connexion à l'adresse suivante http://127.0.0.1:8000/
1.python manage.py startapp blog 2. Ajoutez un élément à setting.py. INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog.apps.BlogConfig', ] 3. Définissez un modèle d'article de blog dans models.py. Ecrivez les paramètres suivants from django.conf import settings from django.db import models from django.utils import timezone
class Post(models.Model): author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) title = models.CharField(max_length=200) text = models.TextField() created_date = models.DateTimeField(default=timezone.now) published_date = models.DateTimeField(blank=True, null=True)
def publish(self): self.published_date = timezone.now() self.save()
def __str__(self):
return self.title
Site de référence https://docs.djangoproject.com/ja/2.2/ref/models/fields/#field-types
python manage.py makemigrations blog
Résultat d'exécution Migrations for 'blog': blog/migrations/0001_initial.py:
python manage.py migrate blog Résultat d'exécution Operations to perform: Apply all migrations: blog Running migrations: Applying blog.0001_initial... OK
1.blog/admin.pyの内容を書き換える from django.contrib import admin from .models import Post
admin.site.register(Post) 2. Exécutez python manage.py runserver 3. Accédez à http://127.0.0.1:8000/admin/ 4. Exécutez python manage.py createuperuser 5. Enregistrez le nom d'utilisateur, etc. 6. Tentative de connexion
pip3.7 install --user pythonanywhere
pa_autoconfigure_django.py --python=3.6 https://github.com/<your-github-username>/my-first-blog.git
Résultat d'exécution
< Running API sanity checks >
\
~<:>>>>>>>>>
Cloning into '/home/djangohkp/djangohkp.pythonanywhere.com'...
remote: Enumerating objects: 29, done.
remote: Counting objects: 100% (29/29), done.
remote: Compressing objects: 100% (22/22), done.
remote: Total 29 (delta 3), reused 29 (delta 3), pack-reused 0
Unpacking objects: 100% (29/29), done.
Checking connectivity... done.
< Creating virtualenv with Python3.6 >
\
~<:>>>>>>>>>
Running virtualenv with interpreter /usr/bin/python3.6
Already using interpreter /usr/bin/python3.6
Using base prefix '/usr'
New python executable in /home/djangohkp/.virtualenvs/djangohkp.pythonanywhere.com/bin/python3.6
Also creating executable in /home/djangohkp/.virtualenvs/djangohkp.pythonanywhere.com/bin/python
Installing setuptools, pip, wheel...
done.
virtualenvwrapper.user_scripts creating /home/djangohkp/.virtualenvs/djangohkp.pythonanywhere.com/b
in/predeactivate
virtualenvwrapper.user_scripts creating /home/djangohkp/.virtualenvs/djangohkp.pythonanywhere.com/b
in/postdeactivate
virtualenvwrapper.user_scripts creating /home/djangohkp/.virtualenvs/djangohkp.pythonanywhere.com/b
in/preactivate
virtualenvwrapper.user_scripts creating /home/djangohkp/.virtualenvs/djangohkp.pythonanywhere.com/b
in/postactivate
virtualenvwrapper.user_scripts creating /home/djangohkp/.virtualenvs/djangohkp.pythonanywhere.com/bin/get_env_details
___________________________________________________________________
/ \
| Pip installing -r |
| /home/djangohkp/djangohkp.pythonanywhere.com/requirements.txt (this |
| may take a couple of minutes) |
\ /
-------------------------------------------------------------------
\
~<:>>>>>>>>>
Looking in links: /usr/share/pip-wheels
Collecting Django~=2.2.4
Downloading Django-2.2.11-py3-none-any.whl (7.5 MB)
|████████████████████████████████| 7.5 MB 21.4 MB/s
Processing /usr/share/pip-wheels/pytz-2019.3-py2.py3-none-any.whl
Collecting sqlparse
Downloading sqlparse-0.3.1-py2.py3-none-any.whl (40 kB)
|████████████████████████████████| 40 kB 973 kB/s
Installing collected packages: pytz, sqlparse, Django
dSuccessfully installed Django-2.2.11 pytz-2019.3 sqlparse-0.3.1
< Creating web app via API >
\
~<:>>>>>>>>>
< Adding static files mappings for /static/ and /media/ >
\
~<:>>>>>>>>>
< Updating wsgi file at /var/www/djangohkp_pythonanywhere_com_wsgi.py >
\
~<:>>>>>>>>>
< Updating settings.py >
\
~<:>>>>>>>>>
< Running collectstatic >
\
~<:>>>>>>>>>
119 static files copied to '/home/djangohkp/djangohkp.pythonanywhere.com/static'.
< Running migrate database >
\
~<:>>>>>>>>>
Operations to perform:
Apply all migrations: admin, auth, blog, contenttypes, sessions
Running migrations:
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying auth.0008_alter_user_username_max_length... OK
Applying auth.0009_alter_user_last_name_max_length... OK
Applying auth.0010_alter_group_name_max_length... OK
Applying auth.0011_update_proxy_permissions... OK
Applying blog.0001_initial... OK
Applying sessions.0001_initial... OK
< Reloading djangohkp.pythonanywhere.com via API >
\
~<:>>>>>>>>>
____________________________________
/ \
| All done! Your site is now live at |
| https://djangohkp.pythonanywhere.com |
\ /
------------------------------------
\
~<:>>>>>>>>>
___________________________________________________________________
/ \
| Starting Bash shell with activated virtualenv in project directory. |
| Press Ctrl+D to exit. |
\ /
-------------------------------------------------------------------
\
~<:>>>>>>>>>
Initialisez le compte administrateur Étant donné que la base de données sur PythonAnywhere et la base de données sur le PC local sont différentes, enregistrez également un compte administrateur ici. Il doit être identique à un compte local.
Essayez d'accéder à la page Web créée
http://
workflow de développement Web Modifier localement → Push to DitHub → Le serveur Web extrait les modifications
Dans l'environnement de production, des paramètres de sécurité supplémentaires sont requis en plus de cela. Page de référence https://docs.djangoproject.com/ja/2.2/howto/deployment/checklist/
・ À propos du contour de la vue (citation originale) La vue est l'endroit où vous écrivez la logique de votre application. La vue demande des informations au modèle que vous avez créé précédemment et les transmet au modèle. Les modèles seront créés dans le chapitre suivant. Les vues ne sont que des fonctions Python.
def post_list(request):
return render(request, 'blog/post_list.html', {})
git status
2.Faites en sorte que git reflète toutes les modifications dans le répertoire
git add --all.
git status
git commit -m "Contenu du commentaire"
git push
cd ~/<your-pythonanywhere-domain>.pythonanywhere.com
git pull
CSS Les changements dans le CSS créé ne sont pas reflétés. Verification requise
Recommended Posts