Здравствуйте! В Python & Django я новичек. Пытаюсь разобраться с подключением к БД и отображением данных на страничке сайта.
Исходные данные:
- Oracle 10.2.0.4
- Python 3.5 x64
- Django 1.10.1
- Запрос состоящий из join к нескольким таблицам.
Какую информацию я смог найти по данному вопросу:
1) Для подключения к базе Oracle увидел только модуль cx_Oracle. Запрос выполняется через курсор. Как прикручивать к табличной модели не понятно.
2) Для вывода данных больше всего используется модуль django-tables2. Смотрел что чаще всего ищется на Django Packages. Хотя изначально думал, что используется например jqGrid. Тут в общем нужна возможность сортировки, фильтра, выделения.
Как передать результат выполнения запроса в django-tables2?
Из документации я понял, что модуль может работать с Queryset.
# models.py
class Person(models.Model):
first_name = models.CharField(max_length=200)
last_name = models.CharField(max_length=200)
user = models.ForeignKey('auth.User')
dob = models.DateField()
# tables.py
import django_tables2 as tables
class PersonTable(tables.Table):
class Meta:
model = Person
# views.py
def person_list(request):
table = PersonsTable(Person.objects.all())
return render(request, 'person_list.html', {
'table': table
})
Вот тут не понимаю, как связать модель таблицы и данные запроса?
Если это в принципе невозможно, какая есть альтернатива? Использование raw?
Опытные программисты, подскажите, что вы используете для табличного отображения, как прикручиваете данные из таблиц?