Datenbankvorlagen: Unterschied zwischen den Versionen

Aus MoodleDocs
Wechseln zu:Navigation, Suche
(Die Seite wurde neu angelegt: „{{Datenbank}} {{Zum Übersetzen}} Templates for the Database activity module allow you to control the visual layout of information when listing, viewing or …“)
 
Keine Bearbeitungszusammenfassung
 
(16 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Datenbank}}
{{Datenbank}}
Vorlagen für [[Datenbank | Datenbanken]] erlauben Ihnen die volle Kontrolle über das Aussehen der Datenbankeinträge, wenn Sie diese in einer Liste oder einzeln betrachten, aber auch bei der Eingabe der Einträge. Diese Funktionalität ist ähnlich wie in den Serienbrieffunktionen gängiger Textverarbeitungsprogramme. Sie verwenden Platzhalter, die später durch die eigentlichen Einträge ersetzt werden.


{{Zum Übersetzen}}
== Verwendung von Tags ==
Der Inhalt jedes [[Datenbank erstellen#Datenbankfelder|Datenbankfeldes]], das Sie in Ihrer Datenbank anlegen, und einige spezielle Tags können in die Datenbankvorlage eingearbeitet werden.


Templates for the [[Database activity module]] allow you to control the visual layout of information when listing, viewing or editing database entries. It is a similar to the technique used to ''mail merge'' letters in word processors such as Open Office Writer or Microsoft Word.  
Felder werden im Format <code><nowiki>[[fieldname]]</nowiki></code> angegeben. Alle anderen Tags sehen so aus: <code>##sometag##</code>.


Um die einzelnen Tags, die in der Box links auf der Seite zur Verfügung stehen, Ihrer Vorlage hinzuzufügen, nutzen Sie den Editor (HTML-Modus ausgeschaltet). Positionieren Sie den Cursor an der Stelle, an der Sie eines der Felder oder Elemente einfügen möchten. Klicken Sie nun links auf den gewünschten Eintrag, und das Feld / Tag wird an der korrekten Stelle übernommen. Alternativ können Sie die Platzhalter auch manuell einfügen, in dem Sie die entsprechenden Werte und die benötigten Symbole eintippen: <code>##this##</code> oder <code><nowiki>[[this]]</nowiki></code>.


== Tag usage ==
Tags, die sich auf die Felder der Datenbank beziehen, müssen in doppelten eckigen Klammern den Namen des Datenbankfelds enthalten: <code><nowiki>[[fieldname#TAGNAME]]</nowiki></code>. Folgende Tags stehen zur Verfügung:
* <code><nowiki>[[fieldname]]</nowiki></code> wird ersetzt durch den Wert von ''fieldname''.
* <code><nowiki>[[fieldname#name]]</nowiki></code> wird ersetzt durch den Namen des Feldes.
* <code><nowiki>[[fieldname#description]]</nowiki></code> wird ersetzt durch die Beschreibung des Feldes.


The content of each [[Database fields|field]] you create for your database and some special tags (listed below) can be inserted into the output template by the use of tags.
Außerdem können Sie die folgenden Tags in den Vorlagen verwenden:
* <code>##actionsmenu##</code> erzeugt ein Auswahlmenü mit Aktionen, die Nutzer/innen mit dem aktuellen Datenbankeintrag ausführen können. Das ist die empfohlene Vorgehensweise, um Aktionen mit einem Datenbankeintrag auszuführen. Aus älteren Moodle-Versionen sind jedoch weiterhin folgende Tags für einzelne Aktionen verfügbar: <code>##edit##</code>, <code>##delete##</code>, <code>##approve##</code> oder <code>##disapprove##</code>.
* <code>##more##</code> erzeugt einen Link zur Einzelansicht eines Eintrages, so können alle Informationen des Eintrages aufgerufen werden.
* <code>##moreurl##</code> erzeugt nur die URL für den oben erwähnten Link. Dies ist hilfreich, wenn Sie Ihre eigenen Links nutzen möchten. Sie können auf das Link-Symbol klicken und schreiben <code>##moreurl##</code> in das URL-Feld, oder Sie schreiben im HTML-Modus <pre><a href="##moreurl##">[[fieldname]]</a></pre>
* <code>##timeadded##</code> zeigt an, wann der Eintrag hinzugefügt wurde.
* <code>##timemodified##</code> zeigt an, wann der Eintrag zum letzten Mal bearbeitet wurde.
* <code>##userpicture##</code> zeigt das Nutzerbild in der Listenansicht an.
* <code>##approvalstatus##</code> sorgt dafür, das noch nicht freigegebene Einträge hervorgehoben angezeigt werden.
* <code>##tags##</code> zeigen Schlagwörter an.


Fields have the format <code><nowiki>[[fieldname]]</nowiki></code>. All other tags have the format <code>##sometag##</code>.
== Vorlage für Listenansicht ==
Mit dieser Vorlage können Sie die Ansicht der Felder und das Layout der Seite festlegen, die mehrere Einträge auf einmal anzeigt (z.B. Suchergebnisse). Mit dieser Ansicht ist es z.B. möglich, eine einfache Übersicht über alle Einträge zur Verfügung zu stellen. Weiterführende Informationen zu den einzelnen Einträgen erhält man, wenn man auf den jeweiligen Eintrag klickt.  


To use the tags in the box on the left of the page, use the HTML viewer, place your cursor in the text area of your target edit and then click on the tag you want to place. Alternatively, you may simply type the appropriate name within the required symbols like <code>##this##</code> or <code><nowiki>[[this]]</nowiki></code>, respectively.
Siehe [http://tracker.moodle.org/secure/attachment/23333/moodle_databse_activity_list_formatting.pdf Anleitung], wie man eine Vorlage für eine Listenansicht in Form einer Tabelle erstellt.


* <code>##edit##</code> creates a clickable icon link that allows you to edit the current entry (only appears if you have the rights to do this)
Die Vorlage für die Listenansicht kann auch genutzt werden, um die Datenbank in eine CSV-Datei zu [[Datenbank nutzen#Datenbankeinträge exportieren|exportieren]].
* <code>##delete##</code> creates a link that lets you delete the current entry (only appears if you have the rights to do this)
* <code>##approve##</code> create a link that lets you approve the current database entry (only appears if you have the rights to do this)
* <code>##more##</code> creates a link to the single view, which may contain more detailed info
* <code>##moreurl##</code> creates just the URL for the above link, useful for creating your own links. You can click on the link icon and type <code>##moreurl##</code> into URL field or in source view type <pre><a href="##moreurl##">[[fieldname]]</a></pre>
* <code>##comments##</code> creates a link to the view/edit comments page, the link text is the current number of comments (only appears if comments are turned on)
* <code>##user##</code> creates a link to the user page of the user who submitted the entry, link text is their name
* <code>##timeadded##</code>
* <code>##timemodified##</code>
* <code>##firstname##</code>
* <code>##lastname##</code>


== List template ==
== Vorlage für Einzelansicht ==
Mit dieser Vorlage legen Sie feste, wie ein einzelner Datenbankeintrag angezeigt wird. Bei dieser Einzelansicht steht Ihnen mehr Platz zur Anzeige des Eintrages zur Verfügung, und Sie können neben allen Feldern, die dieser Eintrag umfasst, auch größere Bilder als in der Listenansicht zur Verfügung stellen.


This template allows you to control the fields used and their layout when viewing multiple entries at once (e.g. search results). It is possible that this view may simply provide an overview with more detailed information available by clicking on an entry to access the single view of the entry.
== Vorlage zur erweiterten Suche ==
Die Vorlage für die erweiterte Suche erlaubt eine Anpassung der Ansicht der Suchergebnisse.


See [http://tracker.moodle.org/secure/attachment/23333/moodle_databse_activity_list_formatting.pdf Designing a list view in Moodle database activity] for instructions on how to create a list template table.
== Vorlage für Einträge hinzufügen ==
Mit dieser Vorlage bestimmen Sie, wie die Seite aussieht, auf der Sie einen Datenbankeintrag neu hinzufügen oder bearbeiten.


The list template can also be used as a way to [[Database export|export your database]] as a CSV file.
== Vorlage für RSS-Feed ==
Mittels der Vorlage für RSS-Feeds können Sie den Inhalt Ihres RSS-Feeds zur Datenbank bestimmen.


== Single template ==
== Nutzerdefiniertes CSS ==
This is used to display a single entry at a time and so has more space for display and can use, for example, larger versions of images or optionally provide more information than shown in the list view.
Wenn Sie in Ihrer Datenbank HTML-Tags verwenden, die spezielle Formatierungen via CSS benötigen, so können Sie hier die datenbankspezifische CSS-Datei bearbeiten.


[[Image:Databasesingletemplate.png]]
== Nutzerdefiniertes JavaScript ==


== Advanced search template ==
Sie können JavaScript zur Manipulation der Elemente nutzen, die in der Listen- oder Einzelansicht sowie beim Hinzufügen von Datensätzen angezeigt werden.
Prinzipiell müssen Sie den Teil, den Sie bearbeiten möchten, in ein benanntes HTML-Element einschließen. Die Benennung ist wichtig, da sie es erlaubt, das Element bei der Bearbeitung eindeutig zu identifizieren.


An advanced search template is for creating the interface form used in the advanced search.  
'''Beispiel''':
Sie haben ein Feld in Ihrer Datenbank, welches den Namen ein Person speichert, und wenn Sie die Namen in der Listenansicht ansehen, möchten Sie bestimmte Vorkommen von Namen zählen und das Ergebnis anzeigen lassen.


== Add template ==
Ihre Datenbank beinhaltet nun ein Feld ''Name''. In Ihrer Listenansicht können Sie dieses Feld durch <nowiki>[[name]]</nowiki> an der Stelle anzeigen lassen, wo Sie es benötigen. Zum Beispiel haben Sie dann im Eingabebereich ''Wiederholter Bereich'' stehen:
 
This template creates the interface form used when adding or editing database entries.
 
== RSS template ==
 
Lets you control the content of the [[RSS]] feed for database entries.
 
== CSS template ==
 
If any of the [[HTML in Moodle|HTML]] in your other templates requires [[CSS]] to provide visual style you can specify it here.
 
== Javascript template ==
 
You can use javascript to manipulate the way elements are displayed in either the List, Single or Add templates. Basically you need to enclose the part you want to manipulate in some named html element. The naming is essential as it allows you to identify the element for manipulation.
 
Let's say, for example, you have a field in your database that stores a person's name and when you display the names in the List View you want to count the times a name matches some criteria and display the result.
 
Your database will contain a field which we will call "name". In your List template you will be able to display the contents of that field by using the <nowiki>[[name]]</nowiki> construct at the place where you want that information displayed. For example in the ''Repeated entry'' on the list template you will have


<pre>
<pre>
Zeile 71: Zeile 64:
</pre>
</pre>


You now need to modify that entry to ensure that the part you want to manipulate is a named element.
Nun müssen Sie diesen Code bearbeiten um sicherzustellen, dass der Teil, den Sie mittels JavaScript verarbeiten möchten, ein benanntes HTML-Element ist.


<pre>
<pre>
Zeile 81: Zeile 74:
</pre>
</pre>


The footer of your list view can then contain another named element to display the result.
Im Fußzeilenbereich Ihrer Listenansicht können Sie ein weiteres benanntes Feld einfügen, um zum Beispiel das Ergebnis anzuzeigen.


<pre>
<pre>
Zeile 87: Zeile 80:
</pre>
</pre>


Your javascript template can now look as follows
Ihre JavaScript-Vorlage kann nun zum Beispiel so aussehen:


<pre>
<pre>
Zeile 105: Zeile 98:
</pre>
</pre>


This will display a table of names as is usual in the list view. Now at the bottom there will also be the count of the names that matched foo or Foo.
Dieser Code zeigt eine Tabelle aller Namen in der Listenansicht an, ohne sie zu verändern. In der Fußzeile hingegen wird noch die Anzahl der Namen angezeigt, die mit ''foo'' oder ''Foo'' übereinstimmen.
 
== Reset templates button ==


When you first create a database the templates will be pre-filled with appropriate HTML. If you later add fields then you can press the ''reset templates'' button and it will add HTML for the new fields in a similar fashion. If you have edited any of the templates in the meantime then your changes will be lost. It is recommended that you finalize the database fields before changing the template code.
== Vorlagen zurücksetzen ==
Wenn Sie zum ersten Mal eine Datenbank erstellen, sind die Vorlagen mit einem entsprechenden HTML-Code gefüllt. Wenn Sie später Felder hinzufügen, dann können Sie die Schaltfläche ''Vorlage zurücksetzen'' nutzen, um eine ähnliche Standard-HTML-Formatierung zu erzeugen. Haben Sie jedoch bereits Änderungen an der Vorlage durchgeführt, dann gehen diese bei nun verloren. Daher wird empfohlen, zuerst alle Datenbankfelder anzulegen und erst zum Schluss die Vorlagen zu bearbeiten.


==See also==
== Siehe auch ==
*[[Database presets]]
* [[Datenbank erstellen#Vorlagensätze verwenden|Vorlagensätze verwenden]]
*[http://video.google.com/videoplay?docid=7026851446099005477 Video demonstrating tag usage]
* [http://video.google.com/videoplay?docid=7026851446099005477 Video], das die Verwendung von Elementen (Tags) demonstriert


Using Moodle forum discussions:  
Diskussionsbeiträge im Kurs ''Using Moodle'':
*[http://moodle.org/mod/forum/discuss.php?d=55338 Look of the database module]
*[http://moodle.org/mod/forum/discuss.php?d=55338 Look of the database module]
*[http://moodle.org/mod/forum/discuss.php?d=74243 How can I list database information horizontally instead of vertically?]
*[http://moodle.org/mod/forum/discuss.php?d=74243 How can I list database information horizontally instead of vertically?]
Zeile 123: Zeile 115:


[[en:Database templates]]
[[en:Database templates]]
[[es:Plantillas de BasedeDatos]]
[[fr:Modèles]]
[[ja:データベーステンプレート]]

Aktuelle Version vom 25. September 2023, 12:22 Uhr

Vorlagen für Datenbanken erlauben Ihnen die volle Kontrolle über das Aussehen der Datenbankeinträge, wenn Sie diese in einer Liste oder einzeln betrachten, aber auch bei der Eingabe der Einträge. Diese Funktionalität ist ähnlich wie in den Serienbrieffunktionen gängiger Textverarbeitungsprogramme. Sie verwenden Platzhalter, die später durch die eigentlichen Einträge ersetzt werden.

Verwendung von Tags

Der Inhalt jedes Datenbankfeldes, das Sie in Ihrer Datenbank anlegen, und einige spezielle Tags können in die Datenbankvorlage eingearbeitet werden.

Felder werden im Format [[fieldname]] angegeben. Alle anderen Tags sehen so aus: ##sometag##.

Um die einzelnen Tags, die in der Box links auf der Seite zur Verfügung stehen, Ihrer Vorlage hinzuzufügen, nutzen Sie den Editor (HTML-Modus ausgeschaltet). Positionieren Sie den Cursor an der Stelle, an der Sie eines der Felder oder Elemente einfügen möchten. Klicken Sie nun links auf den gewünschten Eintrag, und das Feld / Tag wird an der korrekten Stelle übernommen. Alternativ können Sie die Platzhalter auch manuell einfügen, in dem Sie die entsprechenden Werte und die benötigten Symbole eintippen: ##this## oder [[this]].

Tags, die sich auf die Felder der Datenbank beziehen, müssen in doppelten eckigen Klammern den Namen des Datenbankfelds enthalten: [[fieldname#TAGNAME]]. Folgende Tags stehen zur Verfügung:

  • [[fieldname]] wird ersetzt durch den Wert von fieldname.
  • [[fieldname#name]] wird ersetzt durch den Namen des Feldes.
  • [[fieldname#description]] wird ersetzt durch die Beschreibung des Feldes.

Außerdem können Sie die folgenden Tags in den Vorlagen verwenden:

  • ##actionsmenu## erzeugt ein Auswahlmenü mit Aktionen, die Nutzer/innen mit dem aktuellen Datenbankeintrag ausführen können. Das ist die empfohlene Vorgehensweise, um Aktionen mit einem Datenbankeintrag auszuführen. Aus älteren Moodle-Versionen sind jedoch weiterhin folgende Tags für einzelne Aktionen verfügbar: ##edit##, ##delete##, ##approve## oder ##disapprove##.
  • ##more## erzeugt einen Link zur Einzelansicht eines Eintrages, so können alle Informationen des Eintrages aufgerufen werden.
  • ##moreurl## erzeugt nur die URL für den oben erwähnten Link. Dies ist hilfreich, wenn Sie Ihre eigenen Links nutzen möchten. Sie können auf das Link-Symbol klicken und schreiben ##moreurl## in das URL-Feld, oder Sie schreiben im HTML-Modus
    <a href="##moreurl##">[[fieldname]]</a>
  • ##timeadded## zeigt an, wann der Eintrag hinzugefügt wurde.
  • ##timemodified## zeigt an, wann der Eintrag zum letzten Mal bearbeitet wurde.
  • ##userpicture## zeigt das Nutzerbild in der Listenansicht an.
  • ##approvalstatus## sorgt dafür, das noch nicht freigegebene Einträge hervorgehoben angezeigt werden.
  • ##tags## zeigen Schlagwörter an.

Vorlage für Listenansicht

Mit dieser Vorlage können Sie die Ansicht der Felder und das Layout der Seite festlegen, die mehrere Einträge auf einmal anzeigt (z.B. Suchergebnisse). Mit dieser Ansicht ist es z.B. möglich, eine einfache Übersicht über alle Einträge zur Verfügung zu stellen. Weiterführende Informationen zu den einzelnen Einträgen erhält man, wenn man auf den jeweiligen Eintrag klickt.

Siehe Anleitung, wie man eine Vorlage für eine Listenansicht in Form einer Tabelle erstellt.

Die Vorlage für die Listenansicht kann auch genutzt werden, um die Datenbank in eine CSV-Datei zu exportieren.

Vorlage für Einzelansicht

Mit dieser Vorlage legen Sie feste, wie ein einzelner Datenbankeintrag angezeigt wird. Bei dieser Einzelansicht steht Ihnen mehr Platz zur Anzeige des Eintrages zur Verfügung, und Sie können neben allen Feldern, die dieser Eintrag umfasst, auch größere Bilder als in der Listenansicht zur Verfügung stellen.

Vorlage zur erweiterten Suche

Die Vorlage für die erweiterte Suche erlaubt eine Anpassung der Ansicht der Suchergebnisse.

Vorlage für Einträge hinzufügen

Mit dieser Vorlage bestimmen Sie, wie die Seite aussieht, auf der Sie einen Datenbankeintrag neu hinzufügen oder bearbeiten.

Vorlage für RSS-Feed

Mittels der Vorlage für RSS-Feeds können Sie den Inhalt Ihres RSS-Feeds zur Datenbank bestimmen.

Nutzerdefiniertes CSS

Wenn Sie in Ihrer Datenbank HTML-Tags verwenden, die spezielle Formatierungen via CSS benötigen, so können Sie hier die datenbankspezifische CSS-Datei bearbeiten.

Nutzerdefiniertes JavaScript

Sie können JavaScript zur Manipulation der Elemente nutzen, die in der Listen- oder Einzelansicht sowie beim Hinzufügen von Datensätzen angezeigt werden. Prinzipiell müssen Sie den Teil, den Sie bearbeiten möchten, in ein benanntes HTML-Element einschließen. Die Benennung ist wichtig, da sie es erlaubt, das Element bei der Bearbeitung eindeutig zu identifizieren.

Beispiel: Sie haben ein Feld in Ihrer Datenbank, welches den Namen ein Person speichert, und wenn Sie die Namen in der Listenansicht ansehen, möchten Sie bestimmte Vorkommen von Namen zählen und das Ergebnis anzeigen lassen.

Ihre Datenbank beinhaltet nun ein Feld Name. In Ihrer Listenansicht können Sie dieses Feld durch [[name]] an der Stelle anzeigen lassen, wo Sie es benötigen. Zum Beispiel haben Sie dann im Eingabebereich Wiederholter Bereich stehen:

 <table>
   <tr>
     <td>Name: [[name]]</td>
   </tr>
 <table>  

Nun müssen Sie diesen Code bearbeiten um sicherzustellen, dass der Teil, den Sie mittels JavaScript verarbeiten möchten, ein benanntes HTML-Element ist.

 <table>
   <tr>
     <td name="named">Name: [[name]]</td>
   </tr>
 <table>  

Im Fußzeilenbereich Ihrer Listenansicht können Sie ein weiteres benanntes Feld einfügen, um zum Beispiel das Ergebnis anzuzeigen.

  <div name="result"></div>

Ihre JavaScript-Vorlage kann nun zum Beispiel so aussehen:

 var cnt = 0;
 var re = /foo|Foo/;
 
 function init(){
   var namedElements = document.getElementsByName("named");
   for (i=0; i < namedElements.length; i++) {
       if(re.test(namedElements[i].innerHTML)) cnt++;
     }
   var namedResult = document.getElementsByName("result");
   namedResult[0].innerHTML = cnt;
   }
 
 window.onload = init;

Dieser Code zeigt eine Tabelle aller Namen in der Listenansicht an, ohne sie zu verändern. In der Fußzeile hingegen wird noch die Anzahl der Namen angezeigt, die mit foo oder Foo übereinstimmen.

Vorlagen zurücksetzen

Wenn Sie zum ersten Mal eine Datenbank erstellen, sind die Vorlagen mit einem entsprechenden HTML-Code gefüllt. Wenn Sie später Felder hinzufügen, dann können Sie die Schaltfläche Vorlage zurücksetzen nutzen, um eine ähnliche Standard-HTML-Formatierung zu erzeugen. Haben Sie jedoch bereits Änderungen an der Vorlage durchgeführt, dann gehen diese bei nun verloren. Daher wird empfohlen, zuerst alle Datenbankfelder anzulegen und erst zum Schluss die Vorlagen zu bearbeiten.

Siehe auch

Diskussionsbeiträge im Kurs Using Moodle: