Если быть кратким, у меня есть модель с именем drilling
, она содержит 4 внешних ключа из 4 других таблиц моделей.когда я импортировал данные из файла csv
в свою таблицу drilling
с помощью браузера БД для SQLite
, импорт завершился успешно.когда я сейчас перехожу на страницу drilling.html
, я не могу ее загрузить.это ошибка:
ValueError at /project/
invalid literal for int() with base 10: 'B-A-BRS01'
И они перенаправляют меня туда, где произошла ошибка:
104 <td>{{ drilling.project_name }}</td> (that is in the drilling.html line 104)
это часть моей drilling
модели:
project_name = models.ForeignKey(Project)
drill_date = models.DateField(default= '2000-01-01')
shift = models.CharField(max_length = 1, choices = DRILLING_SHIFT)
holes_drilled = models.IntegerField(blank = False, null = True)
meters_drilled = models.DecimalField(blank = False, decimal_places=2, max_digits=10, null = True)
avgdepth_drilled = models.DecimalField(blank = True, decimal_places=2, max_digits=10, null = True)
targetmeters_drilled = models.CharField(max_length = 1, choices = TARGET_MET)
comment = models.CharField(max_length = 220, blank = True, null = True)
geologist = models.ForeignKey(Personel, related_name='Geologist')
driller = models.ForeignKey(Personel, related_name='Driller')
auger = models.ForeignKey(Auger)
client = models.ForeignKey(Client)
vehicle = models.ForeignKey(Vehicle)
часть модели персонала (одно из полей сверления с внешними ключами):
class Personel(models.Model):
personel_full_name = models.CharField(max_length = 220, blank = False, null = False)
personel_designation = models.CharField(max_length = 200, choices = DESIGNATION, default=DESIGNATION[0][0])
personel_email = models.CharField(max_length = 220, blank = True, null = True)
personel_contact = models.CharField(max_length = 220, blank = True, null = True)
timestamp = models.DateTimeField(auto_now_add = True, auto_now = False)
updated = models.DateTimeField(auto_now_add = False, auto_now = True)
def __str__(self):
return self.personel_full_name
# +" ("+self.personel_designation+")"
def __unicode__(self):
return self.id, self.personel_full_name
# +" : "+self.personel_designation
часть бурения. Html:
<tbody>
{% for drilling in drillings %}
<tr>
<td><a href="">{{ drilling.project_name}}</a></td>
<td><a href="">{{ drilling.drill_date}}</a></td>
<td><a href="">{{ drilling.shift}}</a></td>
<td><a href="">{{ drilling.holes_drilled}}</a></td>
<td><a href="">{{ drilling.meters_drilled}}</a></td>
<td><a href="">{{ drilling.avgdepth_drilled}}</a></td>
<td><a href="">{{ drilling.targetmeters_drilled}}</a></td>
<td><a href="">{{ drilling.comment}}</a></td>
<td><a href="">{{ drilling.geologist}}</a></td>
<td><a href="">{{ drilling.driller}}</a></td>
<td><a href="">{{ drilling.auger}}</a></td>
<td><a href="">{{ drilling.client}}</a></td>
<td><a href="">{{ drilling.vehicle}}</a></td>
Я также хотел бы добавить или напомнитьчто в браузере Db, когда поля чужих хэев хранятся в целочисленных полях и их имена также изменяются путем добавления _id
: например, если я назвал поле внешнего ключа как project_name
, БД сделает его project_name_id
и сохраните идентификатор этой самой записи вместо значения, указанного в модели.
пожалуйста, любая помощь будет с радостью принята.Спасибо!