quinta-feira, 18 de agosto de 2011

Django Pinax static css js corrigir links quebrados kinghost

Continuando as configurações do kinghost se tudo o que está no poste anterior deu certo ainda há o problema dos arquivos estáticos para resolver.

.../settings.py
 STATIC_URL = "/site_media/static/"  
 ...  
 ADMIN_MEDIA_PREFIX = posixpath.join(STATIC_URL, "admin/")  

Nos aquivos dos templates
.../base.html
 <link href="{{ STATIC_URL }}pinax/css/base.css" rel="stylesheet">  
que aponta para:
 <link href="/site_media/static/pinax/css/base.css" rel="stylesheet">  

Na pasta "home" no servidor há um arquivo chamado "www" que seria o "/" dos aquivos estáticos, logo se eu preciso de "/site_media/static/pinax/css/base.css" na aplicação crio um link simbólico "site_media -> /home/<seu_nome>/apps_wsgi/<nome_do_projeto>/site_media" (link site_media apontando para site_media dentro do meu projeto) dentro de "www".

Exemplo:
 ~/www  
    /site_media -> /home/<você>/apps_wsgi/dev/site_media  
              /static -> /home/<você>/pinax/pinax-dev/lib/python2.4/site-packages/pinax/media/default  

No Admin.
.../Base.html
 <link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/base.css{% endblock %}" />  
que aponta para:
 <link href="/site_media/static/admin/css/base.css" type="text/css" rel="stylesheet">  

Logo dentro da pasta "~/www/site_media/static/" tenho que criar a pasta admin/ e apontar para os arquivos estáticos. Entre outras que também serão necessárias.

Exemplo:
 ~/www/site_media/static  
             /admin -> /home/<você>/pinax/pinax-dev/lib/python2.4/site-packages/django/contrib/admin/media/  
             /css -> /home/<você>/pinax/pinax-dev/lib/python2.4/site-packages/pinax/projects/basic_project/media/css  
             /js -> /home/<você>/apps_wsgi/dev/media/js  
             /uni_form -> /home/<você>/pinax/pinax-dev/lib/python2.4/site-packages/uni_form/media/uni_form  
 ...  

E assim por diante até que o console do Chrome ou o firebug não tenha mais erros 404.

Fontes:
Django static files - https://docs.djangoproject.com/en/dev/howto/static-files/

Nenhum comentário:

Postar um comentário