質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

4510閲覧

Djangogirlsチュートリアル中に発生したエラーについて

waitohujin

総合スコア11

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/07/30 09:38

Djangogirlsチュートリアルで発生したエラー

pythonで初めてプログラミングにチャレンジし、webアプリを作りたくdjangoの勉強中です。そこで、Djangogirlsチュートリアルを進めており、途中で下記のようなエラーが発生し対処法が分からず困っています。

(myvenv) C:\Users\waito_000\djangogirl>python manage.py makemigrations blog
Traceback (most recent call last):
File "manage.py", line 15, in <module>
execute_from_command_line(sys.argv)
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\core\management_init_.py", line 371, in execute_from_command_line
utility.execute()
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\core\management_init_.py", line 347, in execute
django.setup()
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django_init_.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\apps\registry.py", line 112, in populate
app_config.import_models()
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\apps\config.py", line 198, in import_models
self.models_module = import_module(models_module_name)
File "C:\Users\waito_000\AppData\Local\Programs\Python\Python36\lib\importlib_init_.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 678, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "C:\Users\waito_000\djangogirl\blog\models.py", line 4, in <module>
class Post(models.Model):
File "C:\Users\waito_000\djangogirl\blog\models.py", line 5, in Post
author = models.ForeignKey('auth.User')
TypeError: init() missing 1 required positional argument: 'on_delete'

(myvenv) C:\Users\waito_000\djangogirl>python manage.py manage.py migrate blog
Traceback (most recent call last):
File "manage.py", line 15, in <module>
execute_from_command_line(sys.argv)
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\core\management_init_.py", line 371, in execute_from_command_line
utility.execute()
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\core\management_init_.py", line 347, in execute
django.setup()
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django_init_.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\apps\registry.py", line 112, in populate
app_config.import_models()
File "C:\Users\waito_000\djangogirl\myvenv\lib\site-packages\django\apps\config.py", line 198, in import_models
self.models_module = import_module(models_module_name)
File "C:\Users\waito_000\AppData\Local\Programs\Python\Python36\lib\importlib_init_.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 678, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "C:\Users\waito_000\djangogirl\blog\models.py", line 4, in <module>
class Post(models.Model):
File "C:\Users\waito_000\djangogirl\blog\models.py", line 5, in Post
author = models.ForeignKey('auth.User')
TypeError: init() missing 1 required positional argument: 'on_delete'###

プロジェクトのmodels.pyに入力したコードです。

python

from django.db import models
from django.utils import timezone

class Post(models.Model):
author = models.ForeignKey('auth.User')
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
自身で調べた結果何かしらの第2引数が足りていないことが分かったのですが、どこの部分かわからず自身のタイプミスを疑いDjangoに載っているソースコードをコピペしたのですが、同様のエラーメッセージが発生しました。 1からやり直したのですが同様のエラーメッセージが発生しました。どうか原因の究明のご協力お願いいたします。 djangogirlsチュートリアルhttps://djangogirlsjapan.gitbooks.io/workshop_tutorialjp/django_models/ ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Postクラスの
ForeignKey()on_deleteが指定されていないみたいです。

author = models.ForeignKey('auth.User')を以下のように書き直して実行してみてください

python

1author = models.ForeignKey('auth.User', on_delete=models.CASCADE)

投稿2018/07/30 10:03

crimnut

総合スコア380

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

waitohujin

2018/07/30 14:50

お書きいただいた方法でできました。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問