Ich versuche gerade, in einem Formular der Klasse ‘Kunde’ Attribute einer anderen Klasse ‘Rechnung’ anzuzeigen (über Foreign-Keys).
Weiss jemand, wie ich die Labels einer beliebigen Klasse ansprechen kann, resp. wie ich vordefinierte Labels aufrufen kann? Da ich die Labels nicht statisch in die Page programmieren möchte, wäre es super, wenn ich das Label eines beliebigen Attributs einer beliebigen Klasse ausgeben kann.
Also generell kannst du die Labels von Attributen auch über Relationen hinweg aufrufen. Z.B. als [font="Courier New"]rechnung.rechnungs_nr[/font]. Das klappt in CDetailViews, CGridViews und CActiveForms. Außerhalb dessen wäre sicherlich die CHtml.resolveName() Methode für dich interessant.
Hier ein ähnliches Beispiel (siehe Bild): Wir sind in dem Formular Rechnung und suchen einen zugehörigen Kunden…
Ich möchte die fetten Labels vom Modell auslesen und nicht hart coden, kann die Labels aber nicht über FKs ziehen, weil die Felder über das Feature Autocomplete ausgefüllt werden. Da es nicht alles nur Pflichtfelder sind, kann ich es auch nicht über die Funktion getLabel realisieren.
Wenn ich vom Dropdown eine Auswahl treffe, werden über Autocomplete (unsichtbare) Felder (<span>-Tags) abgefüllt (im Beispiel der Firma "Meier Jörg").
Gibt es denn keine Funktion, mit welcher ich bestimmte Attribut-Labels von beliebigen Klassen abrufen kann?
Ich möchte lediglich die Labels "Firma", "Status", etc. von dem Modell laden, falls sich diese irgendwann einmal ändern sollten. Ich brauche eine Funktion wie getLabel(Klasse Kunden, Attribut firmenname)…
Sorry, falls ich mich soo unverständlich ausdrücke.