djangoでformmodelを使い、ユーザーからの投稿を受け付けてデータベース(PostgreSQL)に保存しようと考えています。
試しに自分でログインしてフォームを送信してみたところ、下記のようなエラーが出ました。
<試してみて失敗した解決法>
・もう一度makemigrations、migateコマンドを走らせる
・makemigrations "アプリ名"、migrate "アプリ名"としてみる
・スペルミスを修正する(これは失敗ではないですが、直接このエラーへの効果はありませんでした。)
<追記>
models.py
python
1from django.db import models 2 3# Create your models here. 4 5class Received_Marker(models.Model): 6 name = models.CharField(max_length=150) 7 lat = models.DecimalField(max_digits=8, decimal_places=6) 8 lng = models.DecimalField(max_digits=9, decimal_places=6) 9 body = models.TextField() 10 . 11 . 12 . 13 14 def __str__(self): 15 return self.name 16 17 def summary(self): 18 return self.body[:50]
forms.py
python
1from django import forms 2 3from .models import Received_Marker 4 5class MarkerForm(forms.ModelForm): 6 7 class Meta: 8 model = Received_Marker 9 fields = ("name", "lat", "lng", "body",.....) 10 11 12
urls.py
python
1from django.conf.urls import url 2from django.urls import path 3from . import views 4 5urlpatterns = [url(r'^add_place/$', views.MarkerCreateView.as_view(), name='add_place_page')]
views.py
python
1from django.shortcuts import render, get_object_or_404 2from django.http import HttpResponse 3from .models import Received_Marker 4from .forms import MarkerForm 5from django.views.generic import CreateView, UpdateView 6 7class MarkerCreateView(CreateView): 8 model = Received_Marker 9 form_class = MarkerForm 10 template_name = "posts/add_place.html" 11 success_url = "/user"
回答3件
あなたの回答
tips
プレビュー