У меня есть база данных mysql, подключенная к django, я знаю, что она подключена, потому что вы уже показали мне данные. Однако я сделал небольшую форму для проведения тестов и не сохраняет данные. Код правильный, потому что я уже переместил его с места на def index (request):
, и там, если вы отправите мне данные, которых нет, потому что они неправильно вводятся в функцию, которую я сделал
views.py
from django.shortcuts import render, redirect
from models import Test
def index(request):
test = Test.objects.all()
context = {'test': test }
return render(request, 'test_app/index.html', context)
def create(request):
print request.POST
test = Test(name=request.POST['name'], breed= request.POST['breed'])
test.save()
return redirect('/')
urls.py
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index),
url(r'^create/$', views.create)
]
index.html
<form action"/create" method="post">
{% csrf_token %}
<label for="name">Name: <input type="text" name="name" />
</label>
<label for="breed">Breed: <input type="text" name="breed"/>
</label> <input type="submit" value="create" />
</form>
У меня нет ошибки, просто не сохраняйте в базе данных, в консоли, если вы отправляете POST
, но без какой-либо переменной. Используйте python 2.7 и django 1.1