tag:blogger.com,1999:blog-14080037832405128792023-06-20T06:01:25.191-07:00the-exceptionNikolay N Lavrenovhttp://www.blogger.com/profile/07069152799943055062noreply@blogger.comBlogger3125tag:blogger.com,1999:blog-1408003783240512879.post-90551184493431740382011-02-06T12:40:00.000-08:002011-02-06T12:40:29.067-08:001. django-cms<span style="background-color: white; font-size: large;"><span style="color: red;">django-cms 2.1.0 - python-2.7.1 - windows xp home sp3</span></span><br />
<br />
<b>1.</b> Устанавливаем python-2.7.1 (по умолчанию C:\Python27)<br />
<b>2.</b> Добавляем в переменную окружения (PATH) пути<br />
C:\Python27\Scripts;C:\Python27\Lib\site-packages;C:\Python27;C:\Python27\libs;<br />
<a name='more'></a><br />
<b>3.</b> Скачиваем и устанавливаем setuptools и PIL<br />
<a href="http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11.win32-py2.7.exe#md5=57e1e64f6b7c7f1d2eddfc9746bbaf20">http://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11.win32-py2.7.exe#md5=57e1e64f6b7c7f1d2eddfc9746bbaf20</a><br />
<a href="http://effbot.org/media/downloads/PIL-1.1.7.win32-py2.7.exe">http://effbot.org/media/downloads/PIL-1.1.7.win32-py2.7.exe</a><br />
<br />
<b>4.</b>Запускаем в командной стоке<br />
sudo easy_install pip<br />
sudo pip install django django-cms south django-appmedia<br />
<br />
<b>5.</b>Создаём каталог для проектов<br />
D:\MyPyProj<br />
и переходим в него в командной строке<br />
D:<br />
cd D:\MyPyProj<br />
<br />
<b>6.</b>Запускаем в командной строке<br />
django-admin.py startproject mycmsproject<br />
cd mycmsproject<br />
<br />
<b>7.</b> Меняем содержимое файла settings.py на<br />
---------------------------------------<br />
# -*- coding: utf-8 -*-<br />
import os<br />
<br />
gettext = lambda s: s<br />
<br />
PROJECT_DIR = os.path.abspath(os.path.dirname(__file__))<br />
<br />
DEBUG = True<br />
TEMPLATE_DEBUG = DEBUG<br />
<br />
ADMINS = (<br />
# ('Your Name', 'your_email@domain.com'),<br />
)<br />
<br />
MANAGERS = ADMINS<br />
<br />
LANGUAGES = [('en', 'en')]<br />
DEFAULT_LANGUAGE = 0<br />
<br />
DATABASES = {<br />
'default': {<br />
'ENGINE': 'django.db.backends.sqlite3',<br />
'NAME': os.path.join(PROJECT_DIR, 'mycms.db'),<br />
}<br />
}<br />
<br />
# Local time zone for this installation. Choices can be found here:<br />
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name<br />
# although not all choices may be available on all operating systems.<br />
# On Unix systems, a value of None will cause Django to use the same<br />
# timezone as the operating system.<br />
# If running in a Windows environment this must be set to the same as your<br />
# system time zone.<br />
TIME_ZONE = 'America/Chicago'<br />
<br />
# Language code for this installation. All choices can be found here:<br />
# http://www.i18nguy.com/unicode/language-identifiers.html<br />
LANGUAGE_CODE = 'en-us'<br />
<br />
SITE_ID = 1<br />
<br />
# If you set this to False, Django will make some optimizations so as not<br />
# to load the internationalization machinery.<br />
USE_I18N = True<br />
<br />
# If you set this to False, Django will not format dates, numbers and<br />
# calendars according to the current locale<br />
USE_L10N = True<br />
<br />
# Absolute filesystem path to the directory that will hold user-uploaded files.<br />
# Example: "/home/media/media.lawrence.com/"<br />
MEDIA_ROOT = os.path.join(PROJECT_DIR, 'media')<br />
<br />
# URL that handles the media served from MEDIA_ROOT. Make sure to use a<br />
# trailing slash if there is a path component (optional in other cases).<br />
# Examples: "http://media.lawrence.com", "http://example.com/media/"<br />
MEDIA_URL = '/media/'<br />
<br />
# URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a<br />
# trailing slash.<br />
# Examples: "http://foo.com/media/", "/media/".<br />
ADMIN_MEDIA_PREFIX = '/media/admin/'<br />
<br />
# Make this unique, and don't share it with anybody.<br />
SECRET_KEY = '0r6%7gip5tmez*vygfv+u14h@4lbt^8e2^26o#5_f_#b7%cm)u'<br />
<br />
# List of callables that know how to import templates from various sources.<br />
TEMPLATE_LOADERS = (<br />
'django.template.loaders.filesystem.Loader',<br />
'django.template.loaders.app_directories.Loader',<br />
)<br />
<br />
MIDDLEWARE_CLASSES = (<br />
'django.middleware.common.CommonMiddleware',<br />
'django.contrib.sessions.middleware.SessionMiddleware',<br />
'django.middleware.csrf.CsrfViewMiddleware',<br />
'django.contrib.auth.middleware.AuthenticationMiddleware',<br />
'django.contrib.messages.middleware.MessageMiddleware',<br />
'cms.middleware.page.CurrentPageMiddleware',<br />
'cms.middleware.user.CurrentUserMiddleware',<br />
'cms.middleware.toolbar.ToolbarMiddleware',<br />
'cms.middleware.media.PlaceholderMediaMiddleware',<br />
)<br />
<br />
TEMPLATE_CONTEXT_PROCESSORS = (<br />
'django.core.context_processors.auth',<br />
'django.core.context_processors.i18n',<br />
'django.core.context_processors.request',<br />
'django.core.context_processors.media',<br />
'cms.context_processors.media',<br />
)<br />
<br />
CMS_TEMPLATES = (<br />
('example.html', 'Example Template'),<br />
)<br />
<br />
ROOT_URLCONF = 'urls'<br />
<br />
TEMPLATE_DIRS = (<br />
os.path.join(PROJECT_DIR, 'templates'),<br />
)<br />
<br />
INSTALLED_APPS = (<br />
'django.contrib.auth',<br />
'django.contrib.contenttypes',<br />
'django.contrib.sessions',<br />
'django.contrib.sites',<br />
'django.contrib.messages',<br />
'django.contrib.admin',<br />
'cms',<br />
'menus',<br />
'mptt',<br />
'appmedia',<br />
'south',<br />
'cms.plugins.text',<br />
'cms.plugins.picture',<br />
'cms.plugins.link',<br />
'cms.plugins.file',<br />
'cms.plugins.snippet',<br />
'cms.plugins.googlemap',<br />
)<br />
---------------------------------------<br />
<br />
7. Меняем содержимое файла urls.py на<br />
<br />
---------------------------------------<br />
from django.conf.urls.defaults import *<br />
from django.contrib import admin<br />
from django.conf import settings<br />
<br />
admin.autodiscover()<br />
<br />
urlpatterns = patterns('',<br />
url(r'^admin/', include(admin.site.urls)),<br />
url(r'^', include('cms.urls')),<br />
)<br />
<br />
if settings.DEBUG:<br />
urlpatterns = patterns('',<br />
(r'^' + settings.MEDIA_URL.lstrip('/'), include('appmedia.urls')),<br />
) + urlpatterns<br />
---------------------------------------<br />
<br />
<b>8.</b> Создаём каталог templates и добавляем в него файл example.html<br />
<br />
---------------------------------------<br />
{% load cms_tags %}<br />
<!doctype html><br />
<head><br />
<title>{{ request.current_page.get_title }}</title><br />
{% plugins_media %}<br />
</head><br />
<br />
<body><br />
{% placeholder "main" %}<br />
</body><br />
</html><br />
---------------------------------------<br />
<br />
<b>9.</b> Запускаем в командной строке<br />
<br />
python manage.py syncdb --all<br />
python manage.py migrate --fake<br />
python manage.py runserver<br />
<br />
<b>10.</b> Переходим на адрес<br />
<a href="http://127.0.0.1:8000/">http://127.0.0.1:8000/</a>Nikolay N Lavrenovhttp://www.blogger.com/profile/07069152799943055062noreply@blogger.com0tag:blogger.com,1999:blog-1408003783240512879.post-66753849522195786472011-02-06T01:54:00.000-08:002011-02-06T01:54:33.173-08:001.GoLang Установка.<br />
Установил на WM Ubuntu-10.10 для нетбуков<br />
sudo apt-get install bison ed gawk gcc libc6-dev make<br />
Так как установлен python 2.6.6<br />
Устанавливаем<br />
sudo apt-get install python-setuptools<br />
для<br />
sudo easy_install mercurial<br />
$ hg clone -r release https://go.googlecode.com/hg/ go<br />
$ cd go/src<br />
$ ./all.bash<br />
Прописываем переменную окружения<br />
export PATH=/home/go/go/bin:$PATH<br />
<br />
Создаём каталог для своих проектов<br />
/home/MyGolangProj<br />
и через текстовый редактор файл test01.go<br />
с содержимым<br />
<br />
package main<br />
<br />
import "fmt"<br />
<br />
func main() {<br />
fmt.Printf("hello, world\n")<br />
}<br />
<br />
<br />
<br />
входим в каталог<br />
cd /home/MyGolangProj<br />
<br />
$ 8g test01.go<br />
$ 8l test01.8<br />
$ ./8.out<br />
hello, world<br />
$<br />
<br />
<br />
Обновляем GoLang (раз в 1-2 дня)<br />
<br />
$ cd go/src<br />
$ hg pull<br />
$ hg update release<br />
$ ./all.bashNikolay N Lavrenovhttp://www.blogger.com/profile/07069152799943055062noreply@blogger.com0tag:blogger.com,1999:blog-1408003783240512879.post-27591019991430217292011-01-20T11:33:00.000-08:002011-01-20T11:44:55.140-08:00closure - старт - 1Начинаю изучение javascript библиотеки <b>closure</b>.<br />
<br />
Официальный сайт.<br />
<a href="http://code.google.com/p/closure-library/">closure-library</a><br />
<br />
Инструментарий:<br />
<a href="http://www.wampserver.com/">WAMP </a><br />
<br />
1.Создаём в директории www, папку для тестов<br />
<b>closure</b><br />
2.Закидываем <b>в нее папку со скачанной библиотекой и переименовываем её в js</b><br />
<b>3. Создаём файл index.php и hello.js</b><br />
<b><a name='more'></a><br />
</b><br />
<b><u>index.php</u></b><br />
<blockquote><blockquote><span style="font-size: x-small;"><html><br />
<head><br />
<meta charset="UTF-8"/><br />
<title>test</title><br />
<script src="<span style="color: red;">js/closure/goog/base.js</span>"></script> // подключение closure<br />
<script src="<span style="color: red;">hello.js</span>"></script> // подключение hello.js<br />
</head><br />
<body onload="<span style="color: red;">sayHi()</span>"> //вызываем функцию из hello.js<br />
</body><br />
</html></span></blockquote></blockquote><u><b>hello.js</b></u><br />
<br />
<blockquote><blockquote><span style="font-size: x-small;">goog.require('goog.dom');<br />
<br />
function sayHi() {<br />
var newHeader = goog.dom.createDom('h1', {'style': 'background-color:#EEE'},<br />
'Hello world!');<br />
goog.dom.appendChild(document.body, newHeader);<br />
}</span></blockquote></blockquote><div class="line number1 index0 alt2"><code class="jscript comments">// подключаем DOM пакет</code></div><div class="line number2 index1 alt1"><code class="jscript plain">goog.require(</code><code class="jscript string">'goog.dom'</code><code class="jscript plain">);</code></div><div class="line number2 index1 alt1"></div><div class="line number2 index1 alt1"><code class="jscript comments">// создаем элемент</code></div><div class="line number2 index1 alt1"><span style="font-size: x-small;">goog.dom.createDom('h1', {'style': 'background-color:#EEE'},<br />
'Hello world!');</span></div><div class="line number2 index1 alt1"></div><div class="line number2 index1 alt1"><code class="jscript comments">// добавляем к DOM</code><span style="font-size: x-small;"> </span><code class="jscript comments"> </code></div><div class="line number2 index1 alt1"><span style="font-size: x-small;">goog.dom.appendChild(document.body, newHeader);</span></div><div class="line number2 index1 alt1"></div><div class="line number2 index1 alt1"><span style="font-size: x-small;">Заходим на http://localhost/closure/</span></div><div class="line number2 index1 alt1"></div><div class="line number2 index1 alt1"><span style="font-size: x-small;">Данный пример взят из документации, поэтому - чтобы закрепить пройденное, экспериментируем:</span></div><div class="line number2 index1 alt1"></div><div class="line number2 index1 alt1"><span style="font-size: x-small;"> </span><u><b>hello.js</b></u></div><div class="line number2 index1 alt1"></div><div class="line number2 index1 alt1"><span style="font-size: x-small;">goog.require('goog.dom');<br />
<br />
function sayHi() {<br />
var newHeader = goog.dom.createDom('h1', {'style': 'background-color:#EEE'},<br />
'Hello world!');<br />
var newHeader2 = goog.dom.$dom('h2', {'style':'color:red;', 'class':'title'}, 'Hello World2!');<br />
var newHeader3 = goog.dom.$dom('h2', {}, 'Hello World3!');<br />
<br />
<br />
goog.dom.appendChild(document.body, newHeader);<br />
goog.dom.appendChild(document.body, newHeader2);<br />
goog.dom.appendChild(document.body, newHeader3);<br />
<br />
} </span><code class="jscript comments"> </code><code class="jscript plain"> </code></div><br />
<br />
Ну вот, собственно и стартанули!Nikolay N Lavrenovhttp://www.blogger.com/profile/07069152799943055062noreply@blogger.com0