Третью ночь бьюсь с проблемой и не сдвинулся ни на шаг. В документации описано как добавлять записи через консоль и там все получается. Запуская в консоли скрипт тоже все получается, а вот сделать так, чтобы база наполнялась при загрузке страницы не получается.
Я изолировал проблему, вот весь код. Необходимо, чтобы в таблицу City сам собой подставлялся foreign key для Country. Следуя примеру добавления записей из консоли я подставляю в качестве значения название класса, таким вот образом – (city, Country) – но получаю ошибку "Error binding parameter 1 - probably unsupported type.".
models.py
views.py
Я изолировал проблему, вот весь код. Необходимо, чтобы в таблицу City сам собой подставлялся foreign key для Country. Следуя примеру добавления записей из консоли я подставляю в качестве значения название класса, таким вот образом – (city, Country) – но получаю ошибку "Error binding parameter 1 - probably unsupported type.".
models.py
Код:
from django.db import models
class Country(models.Model) :
name = models.CharField(max_length=64)
class City(models.Model) :
name = models.CharField(max_length=64)
country = models.ForeignKey(Country, on_delete=models.CASCADE, null=True)
views.py
Код:
from django.shortcuts import render
import sqlite3
from unesco.models import Country
def db(request):
conn = sqlite3.connect('db.sqlite3')
cur = conn.cursor()
country = 'Russia'
cur.execute('''INSERT INTO unesco_country (name) VALUES ( ? )''', (country,))
city = 'Saint Petersburg'
cur.execute('''INSERT INTO unesco_city (name, country_id) VALUES ( ?, ? )''', (city, Country))
conn.commit()
return render(request, 'unesco/db.html')