8 октября 2016 г.

Django. Отображение фотографий на HTML странице (часть 11)



Добавим теперь фотографии домов, для этого расширим модель. В файле models.py напишем:

photo = models.ImageField("фотография", upload_to="houses/photos", default="", blank=True)


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

7 октября 2016 г.

Django. Наполнение страницы данными (часть 10)



Наполним страницу данными, вернемся в views.py и импортируем модуль house

from .models import House

А затем внутри представления напишем:

houses = House.objects.all()

6 октября 2016 г.

Django. Отображение данных на сайте (часть 9)



Для того чтобы показать наши дома на сайте, откроем views.py в нем мы будем хранить так называемые представления - это специальная функция, которая будет возвращать html-страницу в браузере.

В файл views.py добавим функцию houses_list, в которой зададим аргумент request.

20 сентября 2016 г.

Django. Создание первой статьи (часть 8)



Создадим первую статью.

Для того чтобы исправить House object(название статьи), нужно в models.py создать метод __str__

def __str__(self):
    return self.house_name

15 сентября 2016 г.

Django. Панель администрирования (часть 7)



И так у нас есть Модель и Таблица, которая связана с этой моделью, теперь нужно заполнить эту таблицу данными для этого в Django есть встроенная админка, которую можно настроить в файле admin.py

12 сентября 2016 г.

Django. База данных и модели ( часть 6)



Реляционные базы данных

Django прекрасно работает и с MySQL, PostgreSQL, SQLite, Oracle - все это реляционные базы данных.

Реляционные - это значит relational, relation - отношения, в нашем случае отношения между таблицами в нашем случае.

11 сентября 2016 г.

Django. Python, установка PIP и настройка Virtual Environment (часть 1)



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

Системы управления пакетами:
cуществуют две основные системы pip и easy_install. Вам нужно решить, какую систему управления пакетами вы будете использовать.

Как раскрутить сайт



Как раскрутить свой сайт? Самое простое, что можно сделать рассмотрим далее.

Предположим вы создали свой сайт, но к вам никто не заходит, вас не видно в сети. Существует множество способов как сделать так, чтобы вас все-таки увидели.

Наиболее простые способы, которые вы уже можете применить прямо сейчас и абсолютно бесплатно, мы сейчас с вами и рассмотрим.

Основные папки сервера Apache 2.2



Основные папки из которых состоит Apache:

bin – основные программы
cgi-bin – стандартная папка для CGI приложений
conf – файлы конфигурации. В этой папке находится файл http.conf. Этот файл является самой главной настройка самого Apache. Любое изменение этого файла, требует перезагрузку самого Apache
error – файлы ошибок (тут хранится информация об ошибках самого Apache)
htdocs – корневая папка сервера. При первой проверке, что бы узнать работает ли наш Apache, введя в окне браузера http://localhost, информация берется из файла, который находится именно в этой папке.
logs – журнал сервера
modules – стандартные модули сервера. Apache, является модульным. Apache без модулей, это просто, запрос - ответ. Если нужно расширить функциональность, то нужны модули. (узнать подробнее о модуле PHP)

Самый главный конфигурационный файл Apache



Самый главный конфигурационный файл Apache – это httpd.conf

В нем хранится вся конфигурация Apache. Шаг влево, шаг в право и Apache не запустится. Если мы что-то изменили в этом файле, то требуется перезапуск сервера.
Раньше, в Apache 1.3 все настройки хранились в файле httpd.conf, сейчас в версии Apache 2, часть настроек вынесли в папку  /conf/extra. Теперь появилась возможность прописывать все  не в одном файле, а в разных и подключается все с помощью директивы include.

# - (решетки) – это однострочные комментарии. Все, что начинается с решетки и до конца строки – это комментарии.
Чтобы подключить что-нибудь достаточно расскомментировать, следовательно убрать решетку, а если мы хотим что-нибудь отключить, то опять в самом начале строки ставим  #.

Установка Apache на localhost




Установка Apache

Официальный сайт:  httpd.apache.org

Если вы собираетесь использовать Apache, как разработчик, то тогда не важно какую версия вы будите использовать 1.3 или 2.2, вам главное, что нужно сделать, это запустить PHP.


Перед началом установки нужно убедится не занят ли наш 80 порт, какой-либо программой. Я использую утилиту netstat со значением –ab.
Открываем: Меню Пуск – Поиск, вписываем cmd и запускаем от имени Администратора, иначе значение –ab не сработает.
С помощью этой команды можно проверить занимает ли кто TCP протокол с локальным адресом 0.0.0.0:80. Если да, то нужно закрыть эту программу, которая использует порт 80, иначе при инсталляции Apache могут возникнуть проблемы.

Установка PHP как модуль Apache



У нас есть Apache и есть PHP, но они ничего друг о друге не знают. Их нужно настроить друг с другом (соединить). PHP прикрутить к  Apache.

1. Открываем файл httpd.conf
Добавляем три строчки в самом конце файла
LoadModule php5_module “c:/PHP/php5apache2_2.dll”
AddType application/x-httpd-php .php
PHPIniDir “c:/PHP/php.ini”

Подключение дополнительных расширений PHP



Исправляем ошибку Fatal error: Call to undefined function mb_strlen().

Эта  ошибка появляется из-за того, что не подключено дополнительное расширение отвечающее за обработку нашей функции. В нашем случае, это функция mb_strlen.
mb_strlen - считает, количество символов в строке.

Пример:
<?php
$s = 'Привет';
$b = 'Privet';
echo strlen($s);&nbsp;   // 12
echo strlen($b);&nbsp;   // 6
echo mb_strlen($s, "UTF-8"); // Ошибка, иначе было бы тоже 6
?>


Настройка VirtualHost в OS Windows



Создаем папку websites на диске C:\
В ней папку нашего локального сервера test.loc
В ней создаем еще 3 папки

c:\websites\test.loc\
    log            //тут будут храниться наши логи
    conf          //тут будет храниться наш файл конфигурации
    www        //тут будут храниться файлы нашего сайта



Далее правка файла hosts
Сам файл должен находится в папке "C:\windows\system32\drivers\etc\"
В любом месте пишем
127.0.0.1        test.loc    www.test.loc

Далее создаем в c:\websites\test.loc\conf
наш файл конфигурации test.loc.conf
В нем пишем

Настройка php.ini



Настройка:

Директива, которая отвечает за временную зону
date.timezone = date.timezone = Europe/Moscow

Уточнить свою временную зону можно здесь http://php.net/date.timezone

Директивы, которые отвечают за вывод ошибок
display_errors = On //Включен вывод ошибок, Off  - выключен
error_reporting = E_ALL & ~E_NOTICE  //Показывать все ошибки кроме уровня E_NOTICE

!!!Я ставлю
error_reporting = E_ALL , при этом значении, будут выводится все ошибки и  предупреждения

Как установить favicon на WordPress





Допустим, что у нас уже есть готовый favicon.ico. Это может быть картинка с любым названием в форматах GIF, JPEG, PNG, BMP. Однако напомню, что лучше всего, если это будет файл изображения в формате .ico с размером 16x16, 32x32, 48ч48 пикселей. Одни из популярных сайтов favicon.ru и degraeve.com (позволяет делать иконки с прозрачным фоном)

Добавить favicon на сайт очень легко. Надо просто скопировать его в корневую директорию сайта по FTP. На WordPress это папка public_html.

Далее указываем путь к файлу favicon.ico. Для этого в файле header.php вашей текущей темы, между тегами <head> </head> надо прописать такой код:

Как найти текст или файл в Linux используя bash





Для поиска текста используем следующую команду:

grep -rnw 'directory' -e "pattern"

Пример:
$ grep -rnw '/var/www/' -e "DOCTYPE html"

Если выводится слишко много  информации то можно добавить команду “less”
$ grep -rnw '/var/www/' -e "DOCTYPE html" | less

Как открыть базу данных SQLite




Решил добавить полезные программы и расширения для работы с базой данной SQLite.
Она очень популярна для использования программ как для Android так и для Python/Django, PHP. Лично мне очень нравится расширение для Firefox, очень удобно с ним работать. Возможно и вам, что-нибудь понравиться.

Mozilla Firefox addon

SqliteBrowser

Sqlitestudio

Sqliteman

Как конвертировать видео G2M3/G2M4




В комплект GoToMeeting, входит необходимый кодек, для кодирования в Windows Media формат.

Итак начнем по порядку.

У вас есть файл video.
wmv, кодированный в G2M3/G2M4 формате.

1. Необходимо скачать и установить кодек, это можно сделать на странице разработчика этого кодека
www.gotomeeting.com/codec
Нажимаем  кнопку "
Install GoToMeeting Codec" и следуем инструкциям.

Как учить английский язык



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

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

Так же для маленьких детей, которые изучают английский язык, я могу посоветовать Доктора Сьюза "Dr. Seuss'"

Html, Css, JavaScript, PHP Шпаргалки



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

7 сентября 2016 г.

Установка Django. Создание первого проекта (часть 2)



Официальный сайт
https://www.djangoproject.com/download/

Установка Django нужной нам версии. Если версия 1.9.5 вас не устраивает, то просто замените на ту, которая вам нужна.

$ pip install Django==1.9.5

Расшифровка (LTS) - long-term support releases

16 июня 2016 г.

Python 2.7 уходит...




Python 2.7 Countdown






Python 2.7 уходит...





Что пишут разработчики?

Python 2.7 больше не будет поддерживаться после 2020. Ни одной официальной даты о поддержке Python 2 не было объявлено, а в PEP 404 сказано про переход с 2.7 на 3, так что эти часы отсчитывают до 12 апреля 2020 года, когда будет проходить 2020 PyCon, на которой будет уже совсем ясно, что будет с Python 2.
Python 2, спасибо тебе за годы верной службы.
Python 3, твое время пришло.







13 мая 2016 г.

Установка Django CMS в Ubuntu 16.04 64bit





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

И так давайте приступим. Для начала нам нужно установить в саму систему следующие зависимости, которые помогут корректно работать как с Django так и с Django CMS.

25 апреля 2016 г.

Ubuntu 16.04 LTS и Python. Что нового для разработчиков?





Как то меня спросили, а почему я не обновлю свою версию Python, я ответил, что так как многие стандартные приложения в Ubuntu написаны именно на Python, то этого делать не стоит. Хотя можно конечно и виртуальное окружение настроить, но это другая история. И вот наконец-то новый релиз Ubuntu 16.04 LTS.

Что нового:

Ubuntu 16.04 LTS вводит новый пакетный менеджер SNAP, который будет работать наряду с традиционными пакетами DEB. Эти два формата, позволят Ubuntu поддерживать разработку как уже существующих проектов так и новых, также это позволит намного проще разрабатывать новые приложения для десктопных и мобильных устройств.

28 марта 2016 г.

Обрезаем рекламу в Youtube роликах с помощью Python




Была у меня зада обрезать рекламу в большом количестве видеороликов для YouTube. Время идет, а та информация которая была в начале роликов уже устарела и время которое нужно было обрезать в каждом ролике ровнялось 4 секундам. Вот я и подумал, а почему бы это дело не автоматизировать с помощью Python и ffmpeg.

Создаем в директории две папки: original_clips и output. В папку original_clips нужно поместить видеоролики, которые нужно обрезать, а обработанные видеоролики будут автоматически появляться в папке output.

27 марта 2016 г.

Python, Tkinter - UTF-8 Converter



Столкнулся недавно с такой ситуацией, что пришлось открывать Windows файл в кодировке windows-1251, а там какие-то непонятные иероглифы. Так как я работаю в основном в Linux, то пришлось написать небольшую программу для конвертирования файлов в кодировку utf-8 и обратно.

Кому интересно создавать вот такие интерфейсы на Python, то представляю вашему вниманию исходный код этой программы.

7 января 2016 г.

Как исправить adb device offline





Вывод на экран если устройство подключено через USB
~$ adb devices
List of devices attached
0123456789ABCDEF    offline

Вывод на экран если устройство подключено через Wi-Fi
~$ adb devices
List of devices attached
192.168.1.2:5555        offline

a) Сначала проверим версию adb, должна быть 1.0.31 или 32, если нет,  то обновите SDK или adb

    Выполните следующую команду:
        ~$ adb version
        Android Debug Bridge version 1.0.31

    Выполните следующую команду:
    ~$ android update adb

    *************************************************************************
    The "android" command is deprecated.
    For manual SDK, AVD, and project management, please use Android Studio.
    For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager
    *************************************************************************

b) Перейдите к "Development options" в настройках вашего телефона и нажмите "Revoke USB debugging authoriz.." Как активировать "Development options" читаем тут