css mit django

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
kostonstyle
User
Beiträge: 148
Registriert: Sonntag 2. November 2008, 12:13

hallo miteinander
habe eine frage, wie kann ich django mit css nutzen? habe auf dieser seite eine tutorial gefunden, aber leider nicht so gut beschrieben das ganze.
http://docs.djangoproject.com/en/dev/ho ... edia-files

gruss kostonstyle[/code]
nemomuk
User
Beiträge: 862
Registriert: Dienstag 6. November 2007, 21:49

Wo ist das Problem? Du lieferst deine statischen Dateien wie CSS, Bilder etc. aus und gibst diese in deinen HTML-Dateien an - das sind absolute Basics.

Je nachdem, ob du das in einem Produkiv- oder Entwicklungsumfeld machst, erledigt das der Webserver oder der "Django-Server" für dich.
kostonstyle
User
Beiträge: 148
Registriert: Sonntag 2. November 2008, 12:13

ehrlich gesagt, ich weiss nicht wie man mod_python installiert auf mein mac. Kann jemand mir bitte helfen? Habe im Internet nach Tutorials gesucht aber leider nichts nützliches gefunden.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

kostonstyle hat geschrieben:ehrlich gesagt, ich weiss nicht wie man mod_python installiert auf mein mac. Kann jemand mir bitte helfen? Habe im Internet nach Tutorials gesucht aber leider nichts nützliches gefunden.
Lass die Finger weg von mod_python! Wozu willst Du das überhaupt installieren?
kostonstyle
User
Beiträge: 148
Registriert: Sonntag 2. November 2008, 12:13

damit ich css und bild dateien benutzen kann muss ich doch mod_python haben oder? Ich habe mal folgendes programmiert

Code: Alles auswählen

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Login site</title>
<link rel="stylesheet" type="text/css" media="screen" href="css/style.css" />
</head>

<body>
    <div class="frame">
    	<div class="logo">
        </div>
      	<div class="line">
        </div>
        <div class="form">
        </div>
    </div>
</body>
</html>
wenn ich die html seite auf python server laufe lasse, dann werden keine css formatierung angezeigt.

danke kostonstyle
nemomuk
User
Beiträge: 862
Registriert: Dienstag 6. November 2007, 21:49

Naja, weil du das lokale Verzeichnis noch in deinen url-patterns einbauen musst...

Code: Alles auswählen

(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',
        {'document_root': '/path/to/media'}),
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

kostonstyle hat geschrieben:damit ich css und bild dateien benutzen kann muss ich doch mod_python haben oder?
Ähem... Nein! Wozu?

Du solltest Dir mal das Tutorial oder die Doku zu Django genauer angucken, speziell den Teil über das Deployment.

mod_python ist ja "nur" ein Modul für den Apache Webserver - Du kannst WSGI-Applikationen (zu denen Djanog gehört) auf dem Apachen auch per mod_wsgi oder per FastCGI via flup laufen lassen.

Zudem gibt es noch zig andere Webserver, auf denen auch WSGI Applikationen laufen können (lighthttpd mal z.B. genannt).
Ich habe mal folgendes programmiert
Hm.... HTML "programmiert" man imho nicht.

Und eine Seite kann man nicht auf einem Server "laufen" lassen!

Das Beispiel sagt nichts aus - wir kennen ja Deine Laufzeitumgebung, die Projektszruktur und die Konfiguration nicht.
kostonstyle
User
Beiträge: 148
Registriert: Sonntag 2. November 2008, 12:13

also, wenn ich die seite auf den django webserver anschaue kommt einfach nichts. Ich habe das Gefühl, dass die CSS Datei gar nicht eingelesen werden.
wenn ich aber die seite ganz normal anschaue wird das bild angezeigt und stylesheets funktioniert. was muss ich tun um das Problem zu lösen?
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

Steht doch oben. Du musst django beibringen, die CSS-Dateien auszuliefern. Lies doch mal denk Link, den du in deinem Anfangsbeitrag gepostet hast, durch.
Benutzeravatar
martin101986
User
Beiträge: 85
Registriert: Montag 3. Dezember 2007, 19:15
Wohnort: Steiermark, Österreich

Hallo,

ich gehe davon mal aus das du den Entwicklungsserver von Django verwendest. Dazu hat dir SchneiderWeisse schon geschrieben was du tun musst.

Hier noch mal der Link zur Doku: How to serve static files

Grüße
Martin
kostonstyle
User
Beiträge: 148
Registriert: Sonntag 2. November 2008, 12:13

Genau ich verwende den Entwicklungsserver von Django. anhand von tutorials "how to serve static files" habe ich es geschafft, files unter url /site_media/ anzeigen zu lassen.
nun, wie muss ich den stylesheet in html einbinden?

Code: Alles auswählen

<link rel="stylesheet" type="text/css" media="screen" href="style.css" />
gruss kostonstyle
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

/site_media/style.css?
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

the more they change the more they stay the same
kostonstyle
User
Beiträge: 148
Registriert: Sonntag 2. November 2008, 12:13

habe folgendes versucht, aber leider funktioniert es nicht

Code: Alles auswählen

<link rel="stylesheet" type="text/css" media="screen" href="/media_files/style.css" />
der kompletter Link sieht so aus.

Code: Alles auswählen

http://127.0.0.1:8000/site_media/media_files/style.css
kostonstyle
User
Beiträge: 148
Registriert: Sonntag 2. November 2008, 12:13

jetzt funktioniert es mit

Code: Alles auswählen

/site_media/media_files/style.css
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

/foo im HTML-Source heißt immer vom Root-Verzeichnis der Domain (z.b. localhost:8080 oder google.de) aus.
Antworten