У меня есть база данных приложения, из которой мой веб-сайт должен получать данные только в соответствии с пользовательским вводом.Добавил сведения о базе данных в файл settings.py
, и я попробовал python manage.py integratedb
и получил все таблицы 300+, отобранные в моем файле models.py
.Я никогда не был в состоянии сделать python manage.py runserver
, это бросило миллион ошибок.Сейчас я нашел решение, но мне нужно ваше мнение по этому поводу.
Я добавил сервер по умолчанию в settings.py
и, используя его, смог запустить сервер.settings.py
выглядит следующим образом.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'mydatabase',
},
'user': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME' : 'test',
'USER' : 'testuser',
'PASSWORD': 'readonly',
'HOST' : '10.20.30.40',
'PORT' : '5446',
}
}
Теперь я могу получить доступ к user db
для получения данных из моей формы?например
views.py
выглядит следующим образом
from django.shortcuts import render_to_response
from .models import TestCases
from django.shortcuts import HttpResponse
from django.http import JsonResponse
from django.forms.models import model_to_dict
from django.views.decorators.csrf import csrf_exempt
# Create your views here.
@csrf_exempt
def index(request):
posts = TestCases.objects.all()[:10]
return render_to_response('index.html',{'posts':posts})
, где TestCases
- имя класса из файла models.py
.
Теперь, когда я нажимаю кнопкудля получения данных я получаю «нет такой таблицы: test_cases»
models.py looks like
class TestCases(models.Model):
id = models.BigIntegerField(primary_key=True)
clientid = models.ForeignKey(Clients, db_column='clientid')
projectid = models.ForeignKey(Projects, db_column='projectid')
class Meta:
managed = False
db_table = 'test_cases'
что я делаю неправильно, чтобы получить данные из пользовательского ввода.пожалуйста, помогите.