Я пытаюсь настроить отношение OneToOne в Django, чтобы показать данные из TableA
и TableB
для конкретной записи c.
У меня возникли проблемы с выяснением, как показать его в моем представлении, примеры есть, но некоторые кажутся немного устаревшими или имеют решения, с которыми я не знаком. без удачи, любой вклад будет высоко ценится!
Мои модели.py
from django.db import models
# Create your models here.
class tableA(models.Model):
created = models.DateTimeField(default=None)
published = models.CharField(max_length=50, default=None)
publisher = models.CharField(max_length=50, default=None)
code = models.CharField(max_length=25, null=True, unique=True)
class Meta:
db_table = 'tableA'
unique_together = (("publisher", "published"),)
def __str__(self):
return self.created
class tableB(models.Model):
tableA = models.OneToOneField(tableA, on_delete=models.CASCADE, primary_key=True, default=None)
code = models.CharField(max_length=50, default=None, null=True)
url = models.CharField(max_length=100, default=None, null=True)
class Meta:
managed = True
def __str__(self):
return self.tableA.code
Мои views.py
def nani(request):
data = TableA.objects.all()
return render(request, 'site/home.html', {'data':data})
Мой шаблон
{% for test in data %}
<tr>
<td>{{ test.published }}</td>
<td>{{ test.publisher }}</td>
<td>{{ test.TableB.url }}</td>
</tr>
{% endfor %}