2014-01-20 5 views
-1

Предполагая, что я создаю страницу администратора с приведенной ниже моделью.Django - Редактировать содержимое admin без перезаписывания предыдущих данных

class Person(models.Model): 
    name = models.CharField() 
    about = models.TextField() 

Теперь я сохранил содержимое ниже в поле «about».

«Я программист».

Опять же, я хотел бы добавить дополнительные данные без перезаписи вышеуказанных данных.

«Я программист. Мне нравится код».

Я добавляю данные прагматично. Однако он просто перезаписывает предыдущие данные и записывает новый. Поэтому я получаю это в поле.

«Мне нравится код».

+1

Как вы «добавляете данные программно» точно? –

+0

Просто определение модели не создает страницу администратора, вам нужно отдельно зарегистрировать модель в 'admin.py', как описано здесь https://docs.djangoproject.com/en/dev/ref/contrib/admin/ – Anentropic

+2

Вам нужно показать нам код, в котором вы пытаетесь добавить данные, чтобы мы могли видеть, что вы делаете неправильно. – Anentropic

ответ

0

Вы должны объяснить, как вы добавляете данные. Как правило, вы можете легко автоматически добавлять данные в Django Model, используя команду сохранения в объявлении модели. См. Дополнительную информацию: https://docs.djangoproject.com/en/dev/topics/db/models/#overriding-predefined-model-methods

+0

Джон, это именно то, что я делаю. Я использую save def для изменения содержимого перед сохранением. Но что происходит, когда я делаю цикл for, то 2-й данные заменяют 1-й данные. Пример: для i в ['a', 'b']: self.number = i 1-й раз он сохраняет, но второй раз он просто заменяет букву b. Но я хочу вставить b, поэтому я могу сохранить как значение a, так и b, а не переписывать предыдущий контент. – user3216693

+0

Я нашел способ сделать это. Мы не должны перебирать петлю внутри модели. Скорее сохраните список с кодировкой json. Затем извлеките список назад, декодируйте json и затем повторите его в шаблоне. Это дает мне результат, который я ожидал. Yuval и Anentropic, мне жаль, что я не был очень ясен в своем вопросе. Я ценю всю вашу помощь по этому поводу. – user3216693

Смежные вопросы