вторник, 6 января 2015 г.

Как в python преобразовать строку в дату?

import datetime

d = datetime.datetime.strptime("18.03.2013", "%d.%m.%Y")

В примере выше строка "18.03.2013" преобразуется в дату, по указанному формату "%d.%m.%Y".

понедельник, 29 декабря 2014 г.

Gem::RemoteFetcher::FetchError

При запуске Web-сервера возникла следующая ошибка:

Gem::RemoteFetcher::FetchError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://rubygems.org/gems/rake- 10.4.2.gem)

Для лечения необходимо в Gemfile заменить:

source 'https://rubygems.org'

на

source 'http://rubygems.org'

четверг, 11 декабря 2014 г.

Как в rails исключить первый элемент в итераторе each?

Конструкция довольно простая:

<% documents[1..-1].each do |document| %>

где documents — коллекция элементов. Действие происходит в шаблоне. Если в конструкции вместо [1..-1] указать [1..-2], то мы исключим и первый и последний элемент.

вторник, 9 декабря 2014 г.

FATAL: 28000: no pg_hba.conf entry for host "a.b.c.d"

Ошибка возникает при попытке подключения к БД, указав в качестве имени хоста его IP-адрес, с другого компьютера в сети.

Для лечения ошибки необходимо в файл pg_hba.conf добавить строку:

host all all a.b.c.d/24 md5

где a.b.c.d — IP-адрес компьютера с СУБД PostgreSQL.

В конце нужно перезапустить службу postgresql-x64-9.2 и все должно заработать.

четверг, 4 декабря 2014 г.

Автоинкремент билда в C#

Для добавления номера билда в программу на C# необходимо:

В файле AssemblyInfo.cs:

[assembly: AssemblyVersion( "1.0.*" )]
[assembly: AssemblyFileVersion( "1.0.*" )]

Затем в нужном месте считываем номер билда:

Assembly.GetExecutingAssembly().GetName().Version.ToString()

и он при каждой компиляции будет увеличиваться.

пятница, 28 ноября 2014 г.

Программная установка режима документов в IE

Чтобы установить режим просмотра документов максимальный для данного браузера (IE), необходимо добавить в head следующую строчку:

<meta http-equiv="X-UA-Compatible" content="IE=edge">

вторник, 11 ноября 2014 г.

четверг, 16 октября 2014 г.

Удаление непустого калатога в Linux

rm -rf DIRNAME

Ключ 'r' говорит о том, что удаление рекурсивное, а ключ 'f' говорит о том, что удалять надо без лишних запросов.

четверг, 9 октября 2014 г.

Подготовка машины к web-разработке на Ruby on Rails

  1. Добавление пользователя в группу sudo;
  2. Установка Node.js;
  3. Установка curl: # apt-get install curl
  4. Установка RVM;
  5. Установка Ruby;
  6. Проверяем корректность установки: $ ruby -v
  7. Установка интерпретатора Ruby по умолчанию;
  8. Установка Rails: $ gem install rails
  9. Проверяем корректность установки: $ rails -v
  10. Установка Java Development Kit: # apt-get install default-jdk
  11. Установка RubyMine
  12. Установка git: # apt-get install git
  13. Установка примочки для использования БД Sqlite: $ gem install sqlite3-ruby
  14. Изучаем один из лучших туториалов Ruby on Rails Tutorial и начинаем творить на рельсах!

Ошибки при переходе на Django 1.7

TypeError: Couldn't reconstruct m2m field tags on Task: __init__() got an unexpected keyword argument 'serialize'

Для устранения данной ошибки необходимо обновить обновить пакет django-taggit:

# pip install django-taggit --upgrade

Следующая ошибка:

ImportError: cannot import name simplejson

вылечилась обновлением пакета django-recaptcha:

# pip install django-recaptcha --upgrade

понедельник, 6 октября 2014 г.

суббота, 4 октября 2014 г.

Определение нажатой кнопки в Django

Если на странице у нас находятся 2 формы соответственно с 2-мя кнопками "Отправить", то во вьюхе нужно как-то определить, какую именно кнопку нажал пользователь.

Решение проблемы следующее:

Для начала для каждой кнопки задаем уникальное имя:

<button type="submit" name="button1">Отправить</button>
<button type="submit" name="button2">Отправить</button>

Затем в представлении определяем, какая именно кнопка была нажата:

if 'button1' in request.POST:
    # Нажата кнопка 1
elif 'button2' in request.POST:
    # Нажата кнопка 2

пятница, 3 октября 2014 г.

Поразмять мозги

Помогут сайты с задачами по программированию. Наиболее понравились следующие:

В комплекте: множество задач разной сложности + автоматическая проверка кода. Язык программирования также можно выбрать из большого списка.

среда, 1 октября 2014 г.

Как создать копию папки с такими же правами?

Для создания копии папки с аналогичными правами, необходимо в Total Commander нажать Shift+F5, поставить галочку "Copy NTFS Permissions".