Форум сайта python.su
Есть некая модель People. И у нее есть атрибуты: id, name, x, y, z… и еще десяток. Все поля, кроме name имеет тип int.
Берем какой нить обьект people с id=n
Существует ли какой нить метод, что бы:
1. у обьекта people я мог рандомно выбрать произвольное поле
2. циклом пройти по всем полям для анализа содержимого
База MySQL
заранее спасибо
Офлайн
У _meta есть метод который возвращает список всех полей:
>>> o = MyModel.objects.create(name='Object name', test_field_1='Value 1', test_field_2='Value 2') >>> for field_name in MyModel._meta.get_all_field_names(): ... print('Field {}: {}'.format(field_name, getattr(o, field_name))) ... Field id: 7 Field name: Object name Field test_field_1: Value 1 Field test_field_2: Value 2 Field year: None >>>
Офлайн