bleach linkify Оборачивание localhost:8000

29 марта 2017 г. 23:43

bleach linkify() пока, к сожалению, не умеет оборачивать ссылки локалхоста типа localhost:8000, но можно написать небольшой workaround, суть которого заключается в следующем: мы заменяем localhost:8000 на какой-нибудь несуществующий сайт, напр. dummy_site.ru, затем применяем linkify() и в заключении возвращаем localhost:8000. Вот небольшой реальный пример:

class Log(models.Model):
    content = models.TextField('Содержание лога')

    def get_content(self):
        def set_target(attrs, new=False):
            attrs['target'] = '_blank'
            return attrs

        content = '{}'.format(self.content.replace('\n', '<br/>'))

        # workaround to allow linkify localhost:8000
        content = content.replace('localhost:8000', 'dummy_site.ru')
        content = linkify(content, callbacks=[set_target, ])
        content = content.replace('dummy_site.ru', 'localhost:8000')

        return content
Примечание:
Чтобы долго не искать, как добавить target="_blank" ссылкам, я оставил callback set_target(attrs, new=False) - часто пригождается.

Оцените статью

0 из 5 (всего 0 оценок)

captcha
Отмеченные звёздочкой поля ( * ) являются обязательными для заполнения.

Спасибо за ваш отзыв!

После нажатия кнопки "Отправить" ваше сообщение будет доставлено мне на почту.

Автор статьи

Артём Мальцев

Веб-разработчик, владеющий знаниями языка программирования Python, фреймворка Django, системы управления содержимым сайта Django CMS, платформы для создания интернет-магазина Django Shop и многих различных приложений, использующих эти технологии.

Права на использование материала, расположенного на этой странице https://vivazzi.pro/ru/it/bleach-linkify-localhost/:

Разрешается копировать материал с указанием её автора и ссылки на оригинал без использования параметра rel="nofollow" в теге <a>. Использование:

Автор статьи: Артём Мальцев
Ссылка на статью: <a href="https://vivazzi.pro/ru/it/bleach-linkify-localhost/">https://vivazzi.pro/ru/it/bleach-linkify-localhost/</a>

Больше: Правила использования сайта

Для тех, кто продаёт через свой профиль в соц. сетях: моя сестра, Анастасия Мальцева запустила свой курс: «Комфортные продажи через контент»

Все знания построены на собственном опыте и имеют хороший результат, поэтому если вы продаёте товары или услуги и хотите повысить эффективность вашего аккаунта или сайта, то курс будет для вас полезен!

Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.

Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.

Комментарии: 0

Вы можете оставить комментарий как незарегистрированный пользователь.

Но зарегистрировавшись, вы сможете:

  • получать оповещения об ответах
  • просматривать свои комментарии
  • иметь возможность использовать все функции разработанных сервисов

Для комментирования от своего имени войдите или зарегистрируйтесь на сайте Vuspace

Отправить

На данный момент нет специального поиска, поэтому я предлагаю воспользоваться обычной поисковой системой, например, Google, добавив "vivazzi" после своего запроса.

Попробуйте

Выберите валюту для отображения денежных единиц