5.11 Upload

Ein anderes Thema sind Dateien, die an einen Artikel angehängt werden sollen. Drupal speichert hochgeladene Dateien in einem zentralen Verzeichnis. Mehr über dieses Verzeichnis und die Konfiguration der Download-Methode lesen Sie in Abschnitt 7.3 Dateisystem: Ordner für Uploads festlegen.

Um Benutzern den Upload zu ermöglichen, müssen Sie unter Verwalten – Strukturierung – Module das Modul Upload aktivieren und unter Verwalten – Benutzerverwaltung – Berechtigungen die Benutzerberechtigungen setzen.

Danach haben berechtigte Benutzer in der Bearbeitungsmaske von Inhalten einen zusätzlichen Link mit dem Namen „Dateianhänge“. Sie können hier beliebig viele Dateien hochladen (Abbildung 5.21).

Dateianhänge zu einem Inhalt
Abbildung 5.21: Dateianhänge zu einem Inhalt

Mehrere Dateien können wieder mit der Maus in der Reihenfolge verschoben werden. Die Reihenfolge der Dateien spielt bei auch einem erzeugten RSS-Feed eine Rolle. Die erste Datei wird im RSS-Feed mit genannt, die folgenden Dateien nicht.

Nach dem Hochladen sind die Dateien im temporären Verzeichnis gespeichert. Erst wenn Sie den Inhalt über den Button am Fuß des Formulars abspeichern, werden die Dateien an Ihre endgültige Position kopiert. Wenn Sie die Checkbox Alle anzeigen neben jeder Datei angekreuzt haben, werden die entsprechenden Dateien in der Ansicht des Inhalts angezeigt (Abbildung 5.22).

Der Anhang in der Inhaltsansicht
Abbildung 5.22: Der Anhang in der Inhaltsansicht

Sie können die Anhänge durch die Alle anzeigen-Checkbox für andere Besucher „unsichtbar“ machen. Die Datei ist allerdings trotzdem vorhanden und kann über einen Link im Textkörper angesprochen werden. Auf diese einfache Art können Sie auch Bilder und Grafiken in Ihren Text einbauen.

TIPP

Unter Verwalten - Einstellungen - Hochgeladene Dateien können Sie die maximale Dateigröße, Pixelbreite und -höhe sowie die erlaubten Dateitypen konfigurieren. Diese Werte werden beim Upload überprüft, und Dateien, die diesen Parametern nicht entsprechen, werden abgewiesen.

Ihre Bewertung: Nichts

Versionierung von Dateianhängen

Gibt es eine Möglichkeit, Dateianhänge zu versionieren (zum Beispiel zwei PDF-Dateien mit der gleichen Namenskonvention) welche sich vom Inhalt her aber unterscheiden?

Wie machen?

Mit diesem Modul nicht.

Wenn Dateianhänge mit gleichem Namen hochgeladen werden, wird der interne Name jeweils um 1 hochgezählt.

  1. Upload von test.pdf -> test.pdf
  2. Upload von test.pdf -> test_1.pdf
  3. Upload von test.pdf -> test_2.pdf

Das ist aber natürlich keine Versionierung sondern eher eine pragmatische Notlösung für gleiche Dateinamen.

Ansonsten kann man das Problem auf verschiedene Arten angehen. Die für Anfänger einfachste Variante führt vermutlich über CCK und Views

  1. ein Inhaltstyp Download erstellen
    Beschreibung des Downloads (Titel, Beschreibung, zusätzliche Felder + ein node reference Feld zur Datei)
  2. ein Inhalttyp Datei
    Version, Änderungen, die eigentliche Datei (per Upload Feld)

Inhaltstyp Datei verbindest Du mit Inhaltstyp Download per node-reference und fertig

Es gibt natürlich auch andere Wege Smiling

Kann Drupal eigentlich nichts nicht? ;)

Danke für deine Hilfe!
Hat bei mir jetzt prima geklappt.
Ich glaube ich muss CCK und Views noch einmal etwas vertiefen :)
Unglaublich wie flexibel Drupal ist.

Fehler

Komisch, ich habe das Modul Upload aktiviert und die Berechtigung für Administrator und angemeldete Benutzer freigegeben. Wenn ich aber dann eine neue Seite oder einen neuen Artikel erstelle, sehe ich nirgends die Möglichkeit Anhänge hochzuladen (wie auf Abb. 5.21). Hab ich da was übersehen?

Danke!
Michael

Wo ist das Upload Modul?

Wenn Du ein Modul aktivierst hat der Administrator immer alle Rechte.Wenn Du einen neuen Inhalt erstellst, sollte im unteren Bereich des Formulars ein "zusammengeklappter Link" mit der Beschriftung Dateianhänge auftauchen. Wenn Du da draufklickst, öffnet sich das Upload Formular.

Gelöst

Danke für die schnelle Antwort!
Genau dieser zusammengeklappte Link war eben nicht da, obwohl ich alles eingestellt hatte.
Was ich noch machen musste war unter Administration > Content management > Inhaltstypen > Artikel oder Seite bearbeiten > Einstellungen für den Arbeitsablauf > Anhänge aktivieren.
Jetzt ist auch der zusammengeklappte Link mit der Beschriftung Dateianhänge sichtbar!
Komisch, ist das denn sonst immer standardmäßig aktiviert? Hab das Drupal 6.4 Komplettpaket von YAML für Drupal installiert. Vielleicht liegt es daran!?
Trotzdem nochmal danke für die Hilfe!

Michael