2011-12-13 6 views
16

PyCharm (1.3 e 2 beta) nel mio progetto Django 1.3 genera un sacco di errori di "riferimento statico irrisolto" durante l'ispezione dei miei modelli per includere script e stile.Pycharm + Django 1.3 + STATIC_URL in templates = Riferimento statico non risolto

In an outdated PyCharm doc, ho trovato una piccola guida che non funziona nella mia situazione, perché i miei file statici sono distribuiti su più app. Anche l'aggiunta delle mie directory statiche a STATICFILES_DIRS non ha funzionato.

Dir structure (simplified): 
    app1/static/js/file.js 
    app1/static/css/file.css 
    app2/static/js/otherfile.js 
    app2/static/css/otherfile.css 
    templates/template.html 

Template.html: 
    <script src="{{ STATIC_URL }}js/file.js"></script> 

file.js risolve quando visito il modello su localhost, ma non in PyCharm.

Come si risolvono i file statici in PyCharm?

+2

Kinda in ritardo, ma che dovrebbe funzionare fuori la casella .. Non è necessario aggiungere la statica dell'app a STATICFILES_DIRS e questo dovrebbe funzionare. –

risposta

7

PyCharm 2.5 trova nuovamente i miei file statici.

Il trucco è contrassegnare app1/static e app2/static come "Source Root".

STATICFILES_DIRS non funziona per me.

+0

Questo ha fatto il trucco anche per me, con 2.7 EAP. IMHO, questo dovrebbe funzionare subito dopo aver analizzato il file 'settings.py'. –

10

Andare su Impostazioni in PyCharm 2,73

Settings >> Project Setting >> Django

Abilita il supporto Django e fornire i percorsi per i seguenti tre file:

Project Root 
Settings file 
Manage.py file 

Quando hai dato queste informazioni, chiudi PyCharm e riavvia i t.

1

La risposta selezionata non funziona per me. Che ha risolto sta usando un prefisso in STATICFILES_DIRS:

STATICFILES_DIRS = (
    # ... 
    ("resources", "C:/data/django/myproject/myapp/static"),) 

come documentato nella documentazione di Django: https://docs.djangoproject.com/en/1.4/ref/contrib/staticfiles/

Poi, nel tuo modello HTML:

<link rel="stylesheet" href="{%static 'resources/favicon.png' %}" type="text/css">