Прежде всего, я не занимаюсь веб-программированием. Я столкнулся с джанго и немного почитал о моделях. Я был заинтригован следующий код (от djangoproject.com):Как работают поля модели Django?
class Person(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
def __str__(self):
# Note use of django.utils.encoding.smart_str() here because
# first_name and last_name will be unicode strings.
return smart_str('%s %s' % (self.first_name, self.last_name))
По моему пониманию питона, first_name и last_name являются переменными класса, не так ли? Как это используется в коде (потому что я предполагаю, что установка Person.first_name или Person.last_name повлияет на все экземпляры Person)? Почему он так используется?
Danke Schon Энди! – Geo
Некоторые хорошие ссылки здесь, но «в этот момент они по существу ведут себя как переменные экземпляра» - это немного ручная маска, которая не очень точна (или, по крайней мере, ничего не объясняет). –
Достаточно честно ... Я подниму руки к этому. +1 на ваш ответ. :) –