sim3x: Это понятно!!! Джанго мне понравилась, и сейчас часть проекта с PHP переношу на неё. Смотря на всё это дело, я не думаю что в моделях бардак, как вы говорите. Но, и сейчас на этой задаче я просто "встал" ))) не знаю куда дальше... Мне на данном этапе хотя бы решить задачу как m2m если поле договора пустое, значения сохранить в другую промежут. таблицу. Если я глето-то туплю вы мне прямо скажите, где ошибка и как бы вы сделали... может где-то я и запутался
sim3x: ))) так пользователи видят свою систему. не мне же выбирать. Ладно спасибо, кроме непонятной критики от вас я ничего больше не услышал. Я просто хотел понял как распарсить m2m и всё.
def __unicode__(self):
return u'Вызов от %s для договора №%s' % (self.date,self.contract)
# СПИСОК ВЫПОНЯЕМЫХ УСЛУГ, ЭТО БУДЕТ ManyToManyField в моделях Service, Rzi
class ServiceList(models.Model):
name = models.CharField(u'наименование',max_length=255,)
# Сигнал, автоматически добавляем запись (выезд) в Rzi если форма была заполнена в модели Service
@receiver(post_save, sender=Request)
def go_request_rzi(sender, instance, created, **kwargs):
contract = Service.objects.filter(pk=instance.contract_id)
for item in contract:
Rzi.objects.create(
contract_number_id=instance.contract_id,
client_id=item.client_id,
serial_number=item.serial_number,
date_equip_sold=item.date_equip_sold,
date_launch=item.date_launch,
date_create=datetime.date.today(),
date_visit=instance.date,
address=item.address,
description=instance.description,
engineer_id=instance.engineer_id,
equipment_id=item.equipment_id,
equipment2_id=item.equipment2_id,
status="1",
time_visit="2",
request_id=instance.id)
post_save.connect(go_request_rzi, sender=Request)
# ВЫЕЗДЫ ИНЖЕНЕРОВ. Как по договору так и без него
class Rzi(models.Model):
sim3x: Если в модели Rzi заполнено поле "номер договора", то все элементы добавляем в промежуточную таблицу Service_Request
Иначе добавляем в Rzi_RziRequest