Найти - Пользователи
Полная версия: Добавление записи с переводом каретки
Начало » Django » Добавление записи с переводом каретки
1
dissdoc
Всем привет. Использую в модели класс TextField()
В нем хочу написать текст с несколькими абзацами. Но получается, что перевод каретки экранируется.
Вопрос такой (в БД смотрю, вроде тоже отсутствует \r\n и подобные вещи)
Посоветуйте, как заставить переходить на новую строку текст? Может я что-то не учел. В хелпе найти никак не могу…
Ferroman
Что-то плохо смотрели - не экранируются (наверное имелось в виду фильтруются?) эти элементы при вводе.
Экранируются элементы только при выводе.
Если вы показываете что-то через шаблон - тут надо смотреть. Ну и, конечно, не забывать что в вебе разметкой ведает html и обычные переносы там игнорируются.
dissdoc
Хорошо. Тогда вопрос такой. Могу ли я и как обработать поле ввода текста?
То есть ввел я текст, нажал кнопку SAVE, но перед записью в БД могу ли я текст обработать своими функциями?
slav0nic
http://docs.djangoproject.com/en/dev/ref/templates/builtins/#linebreaks
про “экранируется” ты не прав;)
dissdoc
Нет. Формы мне я так понимаю не подходят.
Я пока еще путаюсь. Спасает меня только опыт работы с перлом и свой собственный шаблонизатор.
Ввиду того, что пока я Python знаю УЖАСНО. Все же идея у меня такая.
Я данные ввожу из админки пока что. Поэтому хотел и в админке переопределить метод save (по идеи это метод)
Что я сделал
def save(self):
self.description = self.description.replace('\n', '<br/>')
super(BugPost, self).save()
Хотел вот что-то вроде этого изобразить. Но появилась проблема. При сохранении лезут еще аттрибуты &lt и &gt
Как от них избавиться?
dissdoc
slav0nic, я в шоке. Это так элементарно! Спасибо!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB