Запись строки файла в поле модели Django - PullRequest
0 голосов
/ 21 июля 2010

Я не могу написать строку из файла в поле модели Django.Поле описывается в модели как:

 text = models.TextField(null=True, blank=True, help_text='A status message.')

Однако, когда я пытаюсь создать новый объект, я не могу заполнить это поле с помощью функции readline:

file = open(filename, 'r')
str = file.readline()

Когда я пытаюсьиспользовать str для текстового поля, я не могу читать или писать в базу данных.Мне не дают ошибок, поэтому я предполагаю, что это проблема кодирования.Любой совет?Спасибо.

edit

База данных - это база данных postgres, а тип поля - "text".

Код, который я использую для созданияобъект:

Message.objects.create_message(sys, str)

и

def create_message(self, system, msg):
        """Create a message for the given system."""
        m = Message.objects.create(system=system,
                   text=msg)
        return m

Ответы [ 2 ]

2 голосов
/ 21 июля 2010

Не создавайте имена переменных, которые конфликтуют со встроенными типами Python. "str" ​​- тип строки. Интерпретатор Python:

>> str
<type 'str'>
0 голосов
/ 21 июля 2010

Я думаю, вы неправильно вызываете метод create_message.Разве вы не должны просто назвать это так

create_message(sys, str)

вместо этого

Message.objects.create_message(sys, str)

?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...