Программирование

Hg flow - аналог git-flow для mercurial

Есть ветка develop - в ней ведется вся разработка и выливается код на тестовый ...
Локально каждый себе может создавать сколько угодно feature и они не отправляются никуда пока не будут готовы и после того как готовы мержатся в develop
release  - создается из develop когда готовы все нужные новые feature и льется на стейдж для тестирования перед продом  ... Если надо делаются правки по багам именно в ветке релиза уже  ... потом он закрывается и выливается на прод через тег из ветки default
Если надо правка в релиз то только через hotfix

Источники:
https://bitbucket.org/yujiewu/hgflow/wiki/Home - где взять расширение последней ...

Читать далее

Получение случайных объектов из queryset в Django

Получение случайных объектов из queryset в Django

Часто в проектах Django необходимо сделать выборку случайных записей из базы.

О
бычно для получения случайного набора элементов (среза элементов) в Django "обычным" способом делают так:

Book.objects.all (). Order_by ('?')[: 10]

Приведенный выше код, сортирует все книги в произвольном порядке, а затем выбирает первые 10 объектов.
Этот подход не является
, правда, эффективным в MySQL. С использованием "ORDER BY ?" действительно это дорого для запроса.

Поэтому,
хорошо искать другие способы получить случайные элементы (случайный срез).

Например можно случайный срез записей делать так
:

import random
count = Book.objects.all().count()
slice = random.random() * (count - 10)
Book.objects.all()[slice: slice+10]


Приведенный выше ...

Читать далее

Django аутентификация. Email-адрес вместо имени пользователей

Часто в приложениях, которые мы разрабатываем, необходимо использовать адреса электронной почты для авторизации, а не имя пользователя. Посетителям намного легче помнить свой адрес электронной почты, чем постоянно растущий список имен пользователей на сайтах, так как часто они оказываются заняты.

Чтобы написать простую аутентификацию по email на стороне
сервера в джанго, поступим  следующим образом:

1. В settings.py добавим следующие строки (замените youproject именем вашего приложения):

AUTHENTICATION_BACKENDS = (
    'youproject.backends.EmailAuthBackEnd',
    'django.contrib.auth.backends.ModelBackend',
)

2. Создайте файл с именем backends.py с таким соержанием и поместите его в корневой папке (т.е. той же папке, settings.py)

from ...

Читать далее

Zinnia и его альтернативы

Zinnia и его альтернативы

На Django (джанго) при желании можно самому сесть и написать простенький блог буквально за час c довольно немалыми возможностями. Да! И это будет ваш код и Вы будете знать что делается у вас на сайте и как :).

Для этого нужно иметь время, а особенно если хочешь хорошо сверстанный сайт - на это надо еще больше времени. Так как я особо верстать не люблю - меня больше привлекает сторона программирования, и у меня много уходит времени на другие проекты, я решил использовать уже готовый блог для своего сайта как основу, и потом его уже изменять, разбираться в чужом питон коде - это довольно просто ...

Читать далее

Конвертирование текста в поле ввода из русского в английский. Вставка BB-кодов в текстовое поле.

Конвертирование текста в поле ввода из русской раскладки в английскую и обратно.

<script type="text/javascript">
function convertLayout(e, elem)
{
   e = e || window.event;
   var eng='qwertyuiop[]asdfghjkl;\'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?@#$^&|';
   var rus='йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,"№;:?/';
   var src=elem.value;
   if((e.ctrlKey) && ((e.keyCode == 0xA) || (e.keyCode == 0xD)))
   {
           for(i=0;i<src.length;i++){
         for(j=0;j<eng.length;j++)
         {
            if(src.substr(i,1)==eng.substr(j,1))
               src=src.replace(src.substr(i,1),rus.substr(j,1));
            else if(src.substr(i,1)==(rus.substr(j,1)))
               src=src.replace(src.substr(i,1 ...

Читать далее

Пример Python-Django-PyFacebook.

Пример Python-Django-PyFacebook.

Работаю щас над одним проектом, где моя задача написать Facebook приложение. А точнее его серверную часть. Так как я это делаю впервые, то хочу собрать все полезности в одном месте. В этой статье буду публиковать все найденное инересное для выполнения этого задания. Статья будет изменяться и исправляться по мере надобности. Ну что ж, начнем :).

Как работают Facebook приложения?

  1. Пользователь делает запрос к  apps.facebook.com/yourapp/page1/
  2. Сервера Facebook перенаправляют( делают свой отдельный) этот запрос yourserver.com/page1/
  3. Вы получая эти запросы можете обращаться к Facebook API, и использовать FQL для запросов к таблицам Facebook.
  4. Вы отправляете обратно страницы, в ...

Читать далее

Переезд сайта на Django!

Переезд сайта на Django!

Привет, всем посетителям моего сайта!

Сегодня я решился и, все таки, заменил php на python на этом сайте, чему и безмерно рад :)

Случилось это просто - создал приложение Django. И чтоб не создавать колесо заново, как говорится, в качестве блога выбрал компонент Zinnia и прикрутил его в сайт, импорт статей произошел без проблем, правда теги перевелись в транслит и комментарии потерялись, но это не страшно ипоправимо со временем. Дальше конечно предстоит много работы по улучшению. Но все же для меня лично это будет просто и в удовольствие.

Что в ближайших планах: 

  • прикрутить регистрацию
  • довести до ума Теги - а то транслит как-то ...

Читать далее

AJAX и Django + jQuery

Приведу Вам сегодня несколько примеров о том, как осуществлять функциональность AJAX в django приложении, используя библиотека jQuery JavaScript. Скажу сразу, что эта статья относится к версии Django 1.1 или новее и направлена на новичков Django, подобно мне :).

В отличие от некоторых других сетевых приложений, Django, слава Богу  не привязан к какой-либо библиотеке JavaScript, и Вы можете использовать любую на свое усмотрение. Однако, В этой статье я буду использовать jQuery ради простоты.



Базовый пример Django и ajax


Давайте начнем с очень простого кода в views.py ...

Читать далее

Eclipse pydev и django. Установка на windows платформе.

Часто бывает так, что Вам не доступен линукс, это когда Вы сидите на работе, Вы его (Linux) не знаете, или, например, принципиально работаете только с windows. Но при этом хотите работать с Python и Django в Eclipse. И у Вас нет времени на долгие установки и настроки. Хочется вот так вот взять быстренько скачать, поставить и начать работать. Для этого я Вам предлагаю набор инструментов быстрой установки и начала работы.

Берем все свежее на сегодня  ... Я сразу внес все нужные модули в сборку Eclipse и сайты их обновления чтобы Вы могли видеть что и откуда обновляется и чтоб у Вас ...

Читать далее

Установка eclipse в fedora

Вот решил использовать Eclipse для разработки своих приложений, в частности предполагается что в основном буду использовать в работе PHP, Python, MySQL, Oracle (PL/SQL), Javascripts, HTML/CSS .

Сейчас использую linux Fedora release 12 (Constantine) у себя на рабочей лошадке. И для него и буду описывать процесс установки.

Итак, определяем набор необходимых нужных пакетов и ставим их.

su -c 'yum install eclipse-pydev eclipse-jdt eclipse-platform eclipse-rcp eclipse-swt icu4j-eclipse piccolo2d tomcat5-jasper-eclipse eclipse-dtp eclipse-gef eclipse-phpeclipse eclipse-rse eclipse-emf'

вводим пароль рута и итого получаем в результате
Установка     13 пакетов
Общий объем загрузки: 111 M
установленный размер: 136 M


Два слова о том что мы установили ...

Читать далее