Pinax: mudanças entre as edições

De Pontão Nós Digitais
Ir para navegaçãoIr para pesquisar
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:
É um pacote de apps prontas para Django.
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

Exemplo do projeto "social"

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