1. Dmitry

    13.03.2010

    0 ↑
    0 ↓
    Подскажите как сделать что бы при выборе улицы автоматом проставлялись город и район.
    class City(models.Model):
    label = models.CharField(max_length=200)

    def __unicode__(self):
    return self.label

    class District(models.Model):
    """ District """
    label = models.CharField(max_length=200)
    city = models.ForeignKey(City)

    def __unicode__(self):
    return self.label

    class Street(models.Model):
    """ Street """
    label = models.CharField(max_length=200)
    district = models.ForeignKey(District)

    def __unicode__(self):
    return self.label

    class Adress(models.Model):
    """ Adress """
    city = models.ForeignKey(City)
    district = models.ForeignKey(District)
    street = models.ForeignKey(Street)

    def __unicode__(self):
    return u'г.%s | р-н %s | ул.%s' % (self.city, self.district, self.street)
  2. denger

    13.03.2010

    0 ↑
    0 ↓
    class Adress(models.Model): 
        """ Adress """ 
        city = models.ForeignKey(City) 
        district = models.ForeignKey(District) 
        street = models.ForeignKey(Street)
    
        def set_street(self, street):
            if self.street == street:
                return
            self.street = street
            self.district = street.district
            self.city = street.district.city
    
  3. А зачем Вам такое дублирование данных?

  4. Dmitry

    14.03.2010

    0 ↑
    0 ↓
    Я конешно могу что то неправильно сделать (второй раз пишу на джанге) Основная идея это список адресов в БД который можно добавлять через админку. Причем что бы при выборе улицы автоматически подставлялся район и город. Что то типа упрощенного КЛАДРа.

    А как работает эта функция ?
    def set_street(self, street):
    if self.street == street:
    return
    self.street = street
    self.district = street.district
    self.city = street.district.city
  5. что бы при выборе улицы автоматически подставлялся район и город.

    Куда подставлялся? Еще раз спрошу: зачем данные дублировать-то?

  6. Dmitry

    14.03.2010

    0 ↑
    0 ↓
    Я имел ввиду что бы подставлялось в админку. Даные дублируются из-за кривой организации моделей. Щас все переделал вроде работает. Спасибо за советы

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.