Пустой результат запроса при запуске приложения django на heroku, но нормальные результаты на сервере разработки - PullRequest
0 голосов
/ 16 декабря 2018

Я только начал пользоваться герою сегодня.Я тестировал веб-приложение и получил разные результаты по использованию приложения django с локального сервера разработки и heroku.Я импортировал в базу данных, запустив веб-сервер разработки django.Поскольку postgredb использует url amazonaws, я предполагал, что эти данные будут доступны производственному серверу на heroku.

На моем локальном веб-сервере django следующий поиск дает правильные результаты:

from django.db.models import CharField
from django.db.models.functions import Lower
CharField.register_lookup(Lower, "lower")
import logging
logger = logging.getLogger('testlogger')
logger.info('This is a simple log message')
items_set = []
if request.method == 'POST':
    print(request.POST.get)
    form = CGHSMetaForm(request.POST)
    name = request.POST.get('name').lower()
    items_set = CGHSRates.objects.filter(
        name__lower__contains=name).order_by('name')
    print(items_set)
    logger.info(items_set)
else:
    form = CGHSMetaForm()

return render(
    request, 'app/cghs_search.html', {
        'rnd_num': randomnumber(),       
        'form': form,
        'items': items_set,
    })

Я получаю следующие результаты:

Code
Name
Rate
1098
After Mastectomy (Reconstruction)Mammoplasty
Rs 13800.0
364
Local mastectomy-simple
Rs 14548.0
251
Mastoidectomy
Rs 17193.0

Однако на heroku я получаю пустой результат.

База данных - это база данных heroku по умолчанию, postgre db, определяемая следующими настройкамиin settings.py:

import dj_database_url
DATABASES = {'default': dj_database_url.config(default='postgres://kpnbcpyqtxxjqu:2c86exffsdff0d789e7f3b29d70sfsfsffs7be197sffsfsffb233@ec2-53-22-46-10.compute-1.amazonaws.com:5432/dful1l3ra7nknn')}

Почему одна и та же база данных при доступе к разным серверам дает разные результаты?Что я должен проверять?

1 Ответ

0 голосов
/ 16 декабря 2018

Но это не та же база данных.Вы использовали dj_database_url и установили по умолчанию в базу данных AWS;но, вероятно, в ваших настройках Heroku настроена фактическая база данных, поэтому переменные среды базы данных будут заполнены и, следовательно, вместо значения по умолчанию будет использоваться база данных.

Если вы хотите жестко закодировать вашу БД, выследует сделать это прямо в настройках и вообще не использовать dj_database_url.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...