Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 19, 2010 14:51:20

exezed
От:
Зарегистрирован: 2010-04-19
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Три вопроса от новичка.

Приветствую..

Вопрос первый:
Как лучше организовать систему многоуровневых комментариев? Чтобы собственно можно было комментировать комментарии :).. Не могу сообразить, как это разрулить, ведь ответы на комментарии могут быть добавлены позже ответов первого уровня но их нужно показывать рядом с комментируемым комментарием, с отступами, как положено..

Вопрос второй:
Нормально ли делать импорт модулей не в начале .py - файла, а внутри функций, где они собственно и нужны?.. Если это плохо, то почему?

Вопрос третий:

$string = preg_replace (array("~[^\-0-9a-z]+~", "~[\-]+~"), array ('-', '-'), $string);
- эта пэхэпэ загогулина преобразует строку в формат пригодный для использования в качестве URL.. Заменяет все, что не похоже на буквы и цифры на дефис, но не допускает двух дефисов подряд.. Строка “I'm **Django** Noob!” превращается в “i-m-django-noob-” и ей остается всего лишь хвостик отрезать :)
Как мне сделать это же Питоном?.. Не вижу в re что-то похожее на preg_replace.. (

Спасибо!



Офлайн

#2 Апрель 19, 2010 15:56:49

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Три вопроса от новичка.

Вопрос первый:
> google древовидные комментарии django

Вопрос второй:
Да можно. Не плохо, а просто неудобно.

Вопрос третий:
В джанге для создания таких урлов традиционно используют slug
Примеры есть тут: http://stackoverflow.com/questions/837828/how-to-use-a-slug-in-django

Отредактировано (Апрель 19, 2010 15:57:38)

Офлайн

#3 Апрель 26, 2010 16:39:03

exezed
От:
Зарегистрирован: 2010-04-19
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Три вопроса от новичка.

Спасибо.. Все сделал.
Появились еще вопросы.

- Достаточно ли для защиты от XSS заменять во всем вводимом юзером тексте ‘javascript:’ на ''.. ?

- Для ввода контента используется разметка Markdown, которая хранится в базе в исходном виде, а в самих шаблонах рендерится в HTML.. Рендерится вероятно очень быстро, но видимо при каждом запросе заново.. Может быть экономичнее хранить в базе помимо вводимого и уже отхтмлененный текст?.. (оригинал тоже хранить, чтобы можно было редактировать) Особенно учитывая, что в тексте ссылки на Youtube и т.п. будут заменяться на код проигрывателя.. а это же регекспы всякие, вся фигня.. или не париться?… или это потом будет кешироваться, когда к джанге кеш прикрутится?..

- Как сделать так, чтобы в момент удачной регистрации (без активации по почте) пользователя сразу авторизовывать?..



Офлайн

#4 Апрель 26, 2010 16:48:11

exezed
От:
Зарегистрирован: 2010-04-19
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Три вопроса от новичка.

Добавлю, что древовидные комменты сделал по аналогии с этим примером - http://larin.in/archives/74
Понравилось, что вся структура комментов вытягиваются одним запросом к базе..

А от ЧПУ отказался, основательно подумав.. Щас объясню почему)
- во-первых ЧПУчность их довольно сомнительна в случае с кириллицей.. ya-chelovekopodobniy-url-hahaha
- во-вторых, любовь поисковиков к ним тоже, имхо, немного надуманна.. не подтверждена это точно..
- с другой стороны расшаривание в твиттерах/фейсбуках, где URL вида “example.com/p/3456” гораздо предпочтительнее - на нем и остановился..



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version