03.03.2012
Часто бывает нужно организовать новости, блог, какие-то статьи. Для этого обычно используют небольшой вступительный текст и ссылку “Читать далее”.
Если вы используете HTML-тэги в своих статьях, то заметите, что Django не закрывает их при использовании фильтра truncatewords.
Пример реализации
Если вы хотите запретить HTML-тэги только в этом вступительном тексте, а также картинки, видео и прочее, то можно пойти следующим путем. В необходимом файле шаблона, в требуемой переменной примените фильтр striptags, затем truncatewords, затем safe (для правильной обработки HTML-символов):
{{ news.description|striptags|truncatewords:"30"|safe }}
Получится, например, такой текст - “Как все мы помним, после The International все датские игроки из MYM покинули эту организацию и им на замену была взята команда Scythe.SG. Вчера стало известно, что состав снова претерпел серьезные …”. Протестировано на Django 1.3.
Также, если у вас пробелы представлены в виде
, то приведенный выше метод может не работать. Для решения проблемы используйте фильтр truncatewords_html
. Таким образом, код будет вида:
{{ news.description|truncatewords_html:"30"|safe }}
Как видите, мы еще убрали фильтр striptags.
django
03.03.2012
<p>Хехе. Поиграл адекватно веником на доталишесе - заслужил признание в любви, блин))</p>
<p><a href=”/media/uploads/2018/11/09/WC3ScrnShot_030312_020158_01.jpg”><img class=”alignnone size-medium wp-image-149” title=”WC3ScrnShot_030312_020158_01” src=”/media/uploads/2018/11/09/WC3ScrnShot_030312_020158_01.jpg” alt=”” /></a></p>
<p>И результаты игры:</p>
<p><a href=”/media/uploads/2018/11/09/veno_cru_dotalicious.png”><img class=”alignnone size-medium wp-image-150” title=”veno_cru_dotalicious” src=”/media/uploads/2018/11/09/veno_cru_dotalicious.png” alt=”” /></a></p>
игры
02.03.2012
Django при сохранении файла через админку или форму сохраняет название файла. Например, при загрузке картинки "mypic.jpg"
она сохранится с этим названием.
Также, если загружаемый файл на русском языке, то его имя будет сохранено - “моя_картинка.jpg”. Вы можете изменить этот механизм.
ПРИМЕЧАНИЕ. Последующие загружаемые файлы с таким названием будут иметь префикс "_"
, т.е. "_mypic.jpg"
, "__mypic.jpg"
и т.п.
Пример реализации
Этот код должен быть помещен в файл models.py нужного вам приложения.
import os, uuid
def get_file_path(instance, filename):
ext = filename.split('.')[-1]
filename = "%s.%s" % (uuid.uuid4(), ext)
return os.path.join(instance.directory_string_var, filename)
class MyModelFiles(models.Model):
myimage = models.FileField(upload_to = get_file_path)
directory_string_var = 'my-path-to-files-for-this-model'
class MyModelImages(models.Model):
myimage = models.ImageField(upload_to = get_file_path)
directory_string_var = 'my-path-to-images-for-this-model'
Таким образом, при следующей загрузке файла его имя будет выглядеть, например, так «384408e1-5465-46fd-bf47-61f913fa78e5.jpg»
.
Протестировано на версии Django 1.3.
django
02.03.2012
Это ошибка обычно возникает из-за неожиданной перезагрузки СУБД.
В PhpMyAdmin или MySQL-консоли выполните следующий запрос:
REPAIR TABLE `mytable`
где mytable
- таблица, указанная в ошибке.
sql
02.03.2012
Получаем список всех имен столбцов модели
model_field_names = model._meta.get_all_field_names()
Получаем название модели
model_name = model._meta.getattr()
django
01.03.2012
Для успешного парсинга страниц достаточно двух инструментов - urllib и BeautifulSoup. Первый обычно доступен сразу после установки python, второй легко можно найти в интернете - http://www.crummy.com/software/BeautifulSoup/bs3/download/
Пример
>>> from BeautifulSoup import BeautifulSoup
>>> import urllib
>>> f = urllib.urlopen('http://my.site') # Открываем сайт, который будем парсить
>>> soup = BeautifulSoup(f.read()) # Считываем его и одновременно закидываем в BeautifulSoup
>>> my = soup.findAll(name='div', attrs={'class': 'news'}) # Ищем все div`ы с классом 'news'
>>> for m in my:
... print m # Выводим их
Результат, например, может быть следующий (если найден только один div):
[u'Содержание статьи 1.']
По шагам
<span>1</span>. Качаем BeautifulSoup.tar.gz
, который лежит в корне.
<span>2</span>. Распаковываем gz, затем tar.
<span>3</span>. Копируем в папку (желательно без русских символов и пробелов).
<span>4</span>. Устанавливаем:
Нажимаем Ctrl+R
cmd
cd C:\BeautifulSoup-3.2.1
python setup.py install
<span>5</span>. Должно успешно установиться. Теперь можем испытать скрипт. Заходим в python:
>>> from BeautifulSoup import BeautifulSoup
>>> import urllib
>>> f = urllib.urlopen('http://my.site') # Открываем сайт, который будем парсить
>>> soup = BeautifulSoup(f.read()) # Считываем его и одновременно закидываем в BeautifulSoup
>>> my = soup.findAll(name='div', attrs={'class': 'news'}) # Ищем все div`ы с классом 'news'
>>> for m in my:
... print m.findAll(text=True) # Выводим их
<span>6</span>. В результате должны были получить содержимое всех div c классом news
.
django
04.02.2012
При создании элементов на сайте или в оффлайн-приложениях часто требуется создать красивые кнопки. Для этого существует множество приложений, но нас интересуют сервисы с аналогичным функционалом в интернете. Смотрим и выбираем, кому что нравится.
Da Button Factory
http://dabuttonfactory.com
У этого сайта одна функция - создание кнопок. Настроек не слишком много, но можно просто и быстро создать неплохие кнопочки.
Аналоги
http://css-tricks.com/examples/ButtonMaker - кнопки без изображения (на css3).
http://jirox.net/AsButtonGen - китайский сервис, настроек больше, чем в Da Button Factory, но менее удобен.
Если вы знаете еще какие-либо онлайн-сервисы для создания кнопок, пожалуйста, оставьте их адреса в комментариях.
дизайн
04.02.2012
На сегодняшний день существует множество онлайн-сервисов, которые в окне браузера позволяют делать то, что раньше могли только установленные на компьютере программы. Я не хочу перегружать вас информацией, поэтому буду рассмотривать по одному представителю из каждого направления.
Приступим!
pixlr
https://pixlr.com
Просто нереально мощный и бесплатный сервис для работы с фотографиями. Имеет русскоязычный интерфейс. Его вполне можно позиционировать с онлайн-аналогом фотошопа. На этом сайте доступно несколько сервисов для работы с изображениями. Начнем по порядку.
Editor
https://pixlr.com/editor
Интерфейс Editor’а очень сильно похож на интерфейс программы Paint.Net, т.е. является простым и удобным, но в то же время очень функциональным. Попробуйте, и сами все увидите.
Express
https://pixlr.com/express
Сервис Express требуется для наложения каких-либо эффектов на фотографию, быстрой обрезки или изменения размеров изображения.
O-matic
http://pixlr.com/o-matic
Этот сервис также позволяет накладывать кучу спецэффектов на изображение. С помощью него можно сделать, например, следующее.
Также, на pixlr.com есть плагины-грабберы для файрфокса и хрома. С помощью них можно через контекстное меню в браузере открыть интернет-картинку сразу для редактирования в pixlr.com. Также есть бесплатный хостинг для изображений. Это не столь интересно, поэтому подробно не рассматриваю.
Аналоги
https://www.thecanvasprints.co.uk/photoeditor
https://www.photoshop.com
http://www.sumopaint.com/app
http://www.phixr.com
http://www.picjuice.com
http://www.lunapic.com/editor
Если вы знаете еще какие-либо онлайн-сервисы для работы с изображениями, пожалуйста, оставьте их адреса в комментариях.
сервисы
04.02.2012
На сегодняшний день существует множество онлайн-сервисов, которые в окне браузера позволяют делать то, что
раньше могли только установленные на компьютере программы. Я не хочу перегружать вас информацией, поэтому
буду рассмотривать по одному представителю из каждого направления.
Приступим!
<p><a href="http://pixlr.com” target=”_blank” data-mce-href="http://pixlr.com">http://pixlr.com </a></p><p>Просто нереально мощный и бесплатный сервис для работы с фотографиями. Имеет русскоязычный интерфейс. Его вполне можно позиционировать с онлайн-аналогом фотошопа. На этом сайте доступно несколько сервисов для работы с изображениями. Начнем по порядку.</p><h3>Editor</h3><p><a href="http://pixlr.com/editor” data-mce-href="http://pixlr.com/editor">http://pixlr.com/editor</a></p><p>Интерфейс Editor’а очень сильно похож на интерфейс программы Paint.Net, т.е. является простым и удобным, но в то же время очень функциональным. Попробуйте, и сами все увидите.</p><p><br></p><h3>Express</h3><p><a href="http://pixlr.com/express” data-mce-href="http://pixlr.com/express">http://pixlr.com/express</a></p><p>Сервис Express требуется для наложения каких-либо эффектов на фотографию, быстрой обрезки или изменения размеров изображения.</p><p><br></p><h3>O-matic</h3><p><a href="http://pixlr.com/o-matic” data-mce-href="http://pixlr.com/o-matic">http://pixlr.com/o-matic</a></p><p>Этот сервис также позволяет накладывать кучу спецэффектов на изображение. С помощью него можно сделать, например, следующее.</p><p><br></p><p>Также, на pixlr.com есть плагины-грабберы для файрфокса и хрома. С помощью них можно через контекстное меню в браузере открыть интернет-картинку сразу для редактирования в pixlr.com. Также есть бесплатный хостинг для изображений. Это не столь интересно, поэтому подробно не рассматриваю.</p><p><strong>Аналоги:</strong></p><p><a href="http://www.flauntr.com/flauntr/index.jsp” data-mce-href="http://www.flauntr.com/flauntr/index.jsp">http://www.flauntr.com/flauntr/index.jsp</a></p><p><a href="http://fotoflexer.com” data-mce-href="http://fotoflexer.com">http://fotoflexer.com</a></p><p><a href="https://www.photoshop.com” data-mce-href="https://www.photoshop.com">https://www.photoshop.com</a></p><p><a href="http://www.sumopaint.com/app” data-mce-href="http://www.sumopaint.com/app">http://www.sumopaint.com/app</a></p><p><a href="http://www.phixr.com” data-mce-href="http://www.phixr.com">http://www.phixr.com</a></p><p><a href="http://www.splashup.com” data-mce-href="http://www.splashup.com">http://www.splashup.com</a></p><p><a href="http://www.picjuice.com” data-mce-href="http://www.picjuice.com">http://www.picjuice.com</a></p><p><a href="http://www.pikipimp.com” data-mce-href="http://www.pikipimp.com">http://www.pikipimp.com</a></p><p><a href="http://www.lunapic.com/editor” data-mce-href="http://www.lunapic.com/editor">http://www.lunapic.com/editor</a></p><p><a href="http://www.alilg.com/software/free-online-photo-editor” data-mce-href="http://www.alilg.com/software/free-online-photo-editor">http://www.alilg.com/software/free-online-photo-editor</a></p><p><a href="http://www.drpic.com” data-mce-href="http://www.drpic.com">http://www.drpic.com</a></p><p><a href="http://www.aviary.com” data-mce-href="http://www.aviary.com">http://www.aviary.com</a> - растровый и векторный редакторы, эффекты, без регистрации.</p><p>Если вы знаете еще какие-либо онлайн-сервисы для работы с изображениями, пожалуйста, оставьте их адреса в комментариях.</p>
сервисы
28.01.2012
[23:36:42] Genji: Обмен музыкой вконтакте является частью брачных игр современной молодежи. Чем интенсивнее постинг, тем сильнее половое влечение.Если вы заприметили хорошенькую девушку, но не решаетесь заговорить, киньте ей на стену два-три трека.
[23:36:43] Genji: да? оО
[23:36:53] freeWOLF: да
[23:37:02] Genji: жесть, а я бывало просто так кидал оО
[23:37:10] freeWOLF: ага
[23:37:12] freeWOLF: отмазывайся
[23:37:15] freeWOLF: просто так он кидал
[23:37:25] Genji: ^____^
[23:37:30] freeWOLF: это ты прокурору будеш рассказывать
[23:37:34] freeWOLF: когда её в лесу найдут
[23:37:35] Genji: о_о
[23:37:37] freeWOLF: её труп*
забавное