www.pythonanywhere.com Djangohkp
django-admin startproject mysite . Installiert Django im aktuellen Verzeichnis
編集したファイル:settings.py Zeitzone ändern TIME_ZONE = 'Asia/Tokyo'
Sprachwechsel LANGUAGE_CODE = 'ja'
Fügen Sie einen statischen Dateipfad hinzu STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, 'static')
Fügen Sie pythonanywhere.com zum Host hinzu ALLOWED_HOSTS = ['127.0.0.1', '.pythonanywhere.com']
Wenn DEBUG auf True gesetzt ist und ALLOWED_HOSTS eine leere Liste ist, wird die Prüfung automatisch für die drei Hosts ['localhost', '127.0.0.1', '[:: 1]'] durchgeführt. Ich werde. In dieser Konfiguration ist der PythonAnywhere-Hostname, den wir bereitstellen und verwenden möchten, nicht enthalten.
SQlite3 ist standardmäßig eingestellt DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } Führen Sie den folgenden Befehl auf der Konsole aus python manage.py migrate
python manage.py runserver
Überprüfen Sie die Verbindung unter der folgenden Adresse http://127.0.0.1:8000/
1.python manage.py startapp blog 2. Fügen Sie ein Element zu settings.py hinzu. INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog.apps.BlogConfig', ] 3. Definieren Sie ein Blogpost-Modell in models.py. Schreiben Sie die folgenden Einstellungen 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
Referenzseite https://docs.djangoproject.com/ja/2.2/ref/models/fields/#field-types
python manage.py makemigrations blog
Ausführungsergebnis Migrations for 'blog': blog/migrations/0001_initial.py:
python manage.py migrate blog Ausführungsergebnis 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. Führen Sie python manage.py runserver aus 3. Greifen Sie auf http://127.0.0.1:8000/admin/ zu. 4. Führen Sie python manage.py createuperuser aus 5. Registrieren Sie den Benutzernamen usw. 6. Anmeldeversuch
pip3.7 install --user pythonanywhere
pa_autoconfigure_django.py --python=3.6 https://github.com/<your-github-username>/my-first-blog.git
Ausführungsergebnis
< 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. |
\ /
-------------------------------------------------------------------
\
~<:>>>>>>>>>
Initialisieren Sie das Administratorkonto Da sich die Datenbank auf PythonAnywhere und die Datenbank auf dem lokalen PC unterscheiden, registrieren Sie auch hier ein Administratorkonto. Es sollte mit einem lokalen Konto identisch sein.
Versuchen Sie, auf die erstellte Webseite zuzugreifen
http://
Webentwicklungs-Workflow Lokale Änderung → Push to DitHub → Webserver ruft Änderungen ab
In der Produktionsumgebung sind zusätzlich zusätzliche Sicherheitseinstellungen erforderlich. Referenzseite https://docs.djangoproject.com/ja/2.2/howto/deployment/checklist/
・ Über den Umriss der Ansicht (Originalzitat) In der Ansicht schreiben Sie die Logik Ihrer App. Die Ansicht fordert Informationen von dem zuvor erstellten Modell an und übergibt sie an die Vorlage. Vorlagen werden im nächsten Kapitel erstellt. Ansichten sind nur Python-Funktionen.
def post_list(request):
return render(request, 'blog/post_list.html', {})
git status
git add --all.
git status
git commit -m "Inhalt des Kommentars"
git push
cd ~/<your-pythonanywhere-domain>.pythonanywhere.com
git pull
CSS Die Änderungen im erstellten CSS werden nicht berücksichtigt. Bestätigung notwendig
Recommended Posts