Pinax: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
(9 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
Pinax nada mais é do que um script que instala uma coleção de apps (http://dist.pinaxproject.com/dev/) já testadas e estáveis. | |||
Porém, a maioria (senão todas) as apps são de terceiros. Apps Django podem ser adquiridas em http://djangopackages.com/categories/apps/ (atenção ao status de commits como indicador de uma app ser interessante para nós ou não). | |||
== Instalação == | == Instalação == | ||
http://pinaxproject.com/docs/dev/gettingstarted/ | Instale a versão unstable. Se quiser pode usar o virtualenv: | ||
sudo pip install virtualenv | |||
virtualenv mysite-env | |||
source mysite-env/bin/activate | |||
Os comandos abaixo funcionam com ou sem virtualenv (duh): | |||
pip install Pinax | |||
pinax-admin setup_project -l | |||
Escolha um projeto (no caso, escolhi social) e: | |||
pinax-admin setup_project -b social mysite | |||
Agora entre no seu projeto: | |||
cd mysite/ | |||
python manage.py syncdb | |||
python manage.py runserver | |||
Pinax usa SQLite por padrão. Altere o seu ''settings.py'', DATABASES para seu bd específico. | |||
Lembrando que qualquer app pode ser instalada independente do Pinax. Pinax só facilita a vida. Para como instalar apps independentes, veja [[Django]]. | |||
Mais em http://pinaxproject.com/docs/dev/gettingstarted/ | |||
= Apps e deps instaladas por estilo = | |||
== social == | |||
* django-mailer | |||
* django-email-confirmation | |||
* django-timezones | |||
* django-ajax-validation | |||
* pytz | |||
* django-openid | |||
* python-openid | |||
* django-uni-form | |||
* django-announcements | |||
* django-pagination | |||
* django-notification | |||
* docutils | |||
* gdata | |||
* Pygments | |||
* python-twitter | |||
* simplejson | |||
* textile | |||
* vobject | |||
* ybrowserauth | |||
* Markdown | |||
* diff-matc | |||
* h-patch | |||
* geopy | |||
* creole | |||
* django-atomformat | |||
* django-avatar | |||
* django-bookmarks | |||
* django-flag | |||
* django-friends | |||
* django-locations | |||
* django-messages | |||
* django-microblogging | |||
* django-oembed | |||
* django-swaps | |||
* django-sorting | |||
* django-tagging | |||
* django-threadedcomments | |||
* django-voting | |||
* django-wakawaka | |||
* django-photologue | |||
* django-attachments | |||
* django-markup | |||
* django-groups | |||
* django-tagging-ext | |||
==Colocando o Site no Ar== | |||
Edite: | |||
/etc/apache2/httpd.conf | |||
E adicione no fim do arquivo: | |||
WSGIDaemonProcess mysite python-path=/path/to/virtualenvs/pinax-env/lib/python2.5/site-packages | |||
WSGIProcessGroup mysite | |||
WSGIScriptAlias / /path/to/project/deploy/wsgi.py | |||
<Directory /path/to/project/deploy> | |||
Order deny,allow | |||
Allow from all | |||
</Directory> | |||
No caso, "WSGIScriptAlias /" fará com que o site fique na raiz da URL. | |||
Rode: | |||
apache2ctl restart | |||
Se ainda não estiver carregando os arquivos direito, tente adicionar essas linhas no mesmo arquivo: | |||
Alias /site_media/ /path/to/project/site_media/ | |||
Alias /admin_media/ /path/to/project/admin_media/ | |||
Vá até a pasta do seu projeto e rode: | |||
python manage.py build_static | |||
E depois novamente: | |||
apache2ctl restart | |||
Caso ainda não funcione, adicione as seguintes linhas em <projeto>/deploy/pinax.wsgi | |||
import site | |||
site.addsitedir('<caminho para o ambiente virtual pinax>/lib/python2.5/site-packages') | |||
Mais informações: | |||
http://pinaxproject.com/docs/dev/deployment/ | |||
http://pinaxproject.com/docs/dev/media/ | |||
==Exemplo== | |||
[http://hera.ethymos.com.br:1080/pinax/ Exemplo do projeto "social"] | |||
[[Category:Lab Macambira]] | [[Category:Lab Macambira]] | ||
==Bugs Conhecidos== | |||
A versão do Pinax que estava no Hera tinha um bug que deu um trabalho para descobrir o que era. | |||
Ele reclamava que "bool" não tinha o método "has_header". | |||
A solução está aqui: | |||
https://github.com/pinax/pinax/commit/7e045b134630f3b4546082a9ddde4e6fce4483e4 |
Edição atual tal como às 08h56min de 26 de outubro de 2011
Pinax nada mais é do que um script que instala uma coleção de apps (http://dist.pinaxproject.com/dev/) já testadas e estáveis.
Porém, a maioria (senão todas) as apps são de terceiros. Apps Django podem ser adquiridas em http://djangopackages.com/categories/apps/ (atenção ao status de commits como indicador de uma app ser interessante para nós ou não).
Instalação
Instale a versão unstable. Se quiser pode usar o virtualenv:
sudo pip install virtualenv virtualenv mysite-env source mysite-env/bin/activate
Os comandos abaixo funcionam com ou sem virtualenv (duh):
pip install Pinax pinax-admin setup_project -l
Escolha um projeto (no caso, escolhi social) e:
pinax-admin setup_project -b social mysite
Agora entre no seu projeto:
cd mysite/ python manage.py syncdb python manage.py runserver
Pinax usa SQLite por padrão. Altere o seu settings.py, DATABASES para seu bd específico.
Lembrando que qualquer app pode ser instalada independente do Pinax. Pinax só facilita a vida. Para como instalar apps independentes, veja Django.
Mais em http://pinaxproject.com/docs/dev/gettingstarted/
Apps e deps instaladas por estilo
social
- django-mailer
- django-email-confirmation
- django-timezones
- django-ajax-validation
- pytz
- django-openid
- python-openid
- django-uni-form
- django-announcements
- django-pagination
- django-notification
- docutils
- gdata
- Pygments
- python-twitter
- simplejson
- textile
- vobject
- ybrowserauth
- Markdown
- diff-matc
- h-patch
- geopy
- creole
- django-atomformat
- django-avatar
- django-bookmarks
- django-flag
- django-friends
- django-locations
- django-messages
- django-microblogging
- django-oembed
- django-swaps
- django-sorting
- django-tagging
- django-threadedcomments
- django-voting
- django-wakawaka
- django-photologue
- django-attachments
- django-markup
- django-groups
- django-tagging-ext
Colocando o Site no Ar
Edite:
/etc/apache2/httpd.conf
E adicione no fim do arquivo:
WSGIDaemonProcess mysite python-path=/path/to/virtualenvs/pinax-env/lib/python2.5/site-packages WSGIProcessGroup mysite WSGIScriptAlias / /path/to/project/deploy/wsgi.py <Directory /path/to/project/deploy> Order deny,allow Allow from all </Directory>
No caso, "WSGIScriptAlias /" fará com que o site fique na raiz da URL.
Rode:
apache2ctl restart
Se ainda não estiver carregando os arquivos direito, tente adicionar essas linhas no mesmo arquivo:
Alias /site_media/ /path/to/project/site_media/ Alias /admin_media/ /path/to/project/admin_media/
Vá até a pasta do seu projeto e rode:
python manage.py build_static
E depois novamente:
apache2ctl restart
Caso ainda não funcione, adicione as seguintes linhas em <projeto>/deploy/pinax.wsgi
import site site.addsitedir('<caminho para o ambiente virtual pinax>/lib/python2.5/site-packages')
Mais informações:
http://pinaxproject.com/docs/dev/deployment/
http://pinaxproject.com/docs/dev/media/
Exemplo
Bugs Conhecidos
A versão do Pinax que estava no Hera tinha um bug que deu um trabalho para descobrir o que era.
Ele reclamava que "bool" não tinha o método "has_header".
A solução está aqui:
https://github.com/pinax/pinax/commit/7e045b134630f3b4546082a9ddde4e6fce4483e4