Abgesehen von sehr wenigen Ausnahmen entspricht das Fiona-7-API dem API von Scrivito. Sämtliche Methoden bis auf „fiona7_login_button“, „fiona7_head_tags“ und „fiona7_body_tags“ sind nur im Legacy-Modus erlaubt.
Erstellt eine Schaltfläche, die zur Anmeldeseite führt.
Erfüllt die gleiche Aufgabe wie „scrivito_head_tags“ in Scrivito-Applikationen. Sie muss im HEAD-Bereich der Seite aufgerufen werden, um die Bearbeitungskomponenten zu aktivieren.
Erfüllt die gleiche Aufgabe wie „scrivito_body_tags“ in Scrivito-Applikationen. Sie muss im BODY-Bereich der Seite aufgerufen werden, um die Bearbeitungskomponenten zu aktivieren.
Nur im Legacy-Modus erlaubt. Funktioniert wie „scrivito_tag“, akzeptiert jedoch als zweites Argument auch eine Instanz von „RailsConnector::BasicObj“. Somit kann In-Place-Editing auch in den klassischen RailsConnector-Views verwendet werden.
Nur im Legacy-Modus erlaubt. Funktioniert wie „scrivito_tag_list“, akzeptiert jedoch als zweites Argument auch eine Instanz von „RailsConnector::BasicObj“.
Nur im Legacy-Modus erlaubt. Im Legacy-Modus hat jedes RailsConnector-Objekt diese Methode. Sie gibt eine Instanz von „Scrivito::BasicObj“ zurück und ermöglicht es daher, die Methoden des Scrivito-API im Legacy-Modus aufzurufen. Wenn beispielsweise „@obj“ eine Instanz der RailsConnector-Klasse „Publication“ ist und ein Widget-Attribut namens „main_content“ enthält, kann dieses Attribut folgendermaßen gerendert werden.
<%= scrivito_field @obj.scrivito_obj, :main_content %>
Nur im Legacy-Modus erlaubt. Im Legacy-Modus hat jedes Scrivito-Objekt diese Methode, die die Umkehrung zu „scrivito_obj“ ist und eine Instanz von „RailsConnector::Obj“ zurückgibt. Sie unterstützt den gemischten Betrieb von RailsConnector und Fiona 7.
Analog zum RailsConnector benötigen sowohl Fiona 7 als auch Scrivito eine „Obj“-Klasse. Sollte die globale Klasse „Obj“ bereits durch den RailsConnector definiert sein - dies ist im Legacy-Modus der Fall -, dann sollte sie im Scrivito-Namespace definiert werden.
Beispieldefinition von „Obj“ für den Standalone-Modus:
class Obj < Scrivito::BasicObj end
Beispieldefinition von „Obj“ für den Legacy-Modus:
module Scrivito class Obj < ::Scrivito::BasicObj end end
Um eigene Methoden für Vorlagen und Widgets definieren zu können, benötigt man für jede Vorlage und alle Widgets Ruby-Klassen, die denselben Namen wie die jeweilige Vorlage haben. Beispielsweise wird die Vorlage „Publication“ dann auf die Klasse „Publication“ abgebildet.
Im Legacy-Modus kann es jedoch vorkommen, dass der Name bereits belegt ist, gegebenenfalls sogar von einer Klasse, die von „RailsConnector::BasicObj“ abgeleitet ist. In diesem Fall sollte die Definition im Namespace „Scrivito“ angelegt werden. Die Definition von „Publication“ im Standalone-Modus:
class Publication < Obj end
Definition von „Publication“ im Legacy-Modus:
module Scrivito class Publication < ::Scrivito::Obj end end
Dieselben Regeln gelten auch für Widgets: im Legacy-Modus kann die Widget-Vorlage „TextImageWidget“ auf die Klasse „TextImageWidget“ oder „Scrivito::TextImageWidget“ (wenn „TextImageWidget“ bereits belegt ist) abgebildet werden.