ACHTUNG. Das ist ein Archiv des alten forum.ruby-portal.de. Die aktuelle Mailingliste gibt es auf lists.ruby-lang.org/pipermail/ruby-de.

NOTICE. This is a ready-only copy of the old forum.ruby-portal.de. You can find the current mailing list at lists.ruby-lang.org/pipermail/ruby-de.

Die Programmiersprache Ruby

Blog|

Forum|

Wiki  


Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]

Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 17 Okt 2005, 10:56 
Offline
Lehrling

Registriert: 17 Okt 2005, 10:43
Beiträge: 54
Wohnort: Dahlen
Hallo Freaks :D

ich entwickle seit 14 Tagen mit Rails und bin begeistert. Habe vorher das alles im "Nahkampf" mit PHP 5 gemacht, was ich jetzt mit einer Kommandozeile in Ruby on Rails schaffe. Es ist ein geniales System....

Leider scheitere ich z.Zt. an zwei kleinen Dingen:
1. Die hier im Forum dargestellten Ansätze zur Internationalisierung (ich brauche vor allem auch deutsche Fehlermeldungen) funktionieren bei mir nicht. Eine Ergänzung der environment.rb wirkt sich nie und in keiner Weise auf meinen Code aus. Auch das Neustarten des WEBrick ändert nichts... Wo liegt der Hase im Pfeffer???

2. Ich möchte auf meinen Webseiten unter dem Link "Back" einen Mechanismus einbauen, der mich zum jeweiligen! Aufrufer zurückführt und nicht zur "fest verdrahteten" Seite desselben controllers. Ich habe schon ne menge mit link_to Probiert (controller-objekt übergeben, einen Hash übergeben), aber ich bekomme vor allem Syntaxfehler und es klappt nicht...
Kennt jemand eine elegante und einfache Lösung???
Kann mir jemand kurz posten, wie ich dort Objekte übergeben und an ein Partial weiterleiten kann? Z.B. funktioniert @controller nicht, wohl aber @Person und dergleichen...

Herzliche Grüße und
schon mal n'vielen Dank

theo


Nach oben
 Profil  
 
BeitragVerfasst: 17 Okt 2005, 14:35 
Offline
Obfuscator

Registriert: 18 Feb 2004, 15:47
Beiträge: 560
Wohnort: Erkelenz (Ostlimburg)
theobald hat geschrieben:
2. Ich möchte auf meinen Webseiten unter dem Link "Back" einen Mechanismus einbauen, der mich zum jeweiligen! Aufrufer zurückführt und nicht zur "fest verdrahteten" Seite desselben controllers.


Du meinst, Du willst die Zurück-Funktion des Browsers imitieren? Wieso das denn? Am einfachsten, aber nicht am elegantesten, geht's mit javascript: history.back() oder so ähnlich. Wenn es railsseitig geschehen soll, mußt Du Dich vermutlich mit Sessions beschäftigen, wozu es im Railswiki was geben sollte.

Malte


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17 Okt 2005, 15:00 
Offline
Lehrling

Registriert: 17 Okt 2005, 10:43
Beiträge: 54
Wohnort: Dahlen
Hallo Malte,

danke für die schnelle Nachricht. Naja ganz so einfach wie eine History soll es nicht sein, denn die führt mich ja nicht zur unmittelbar vorhergehenden Seite zurück unter der Randbedingung, dass alle darauf befinlichen Daten nachgeladen werden. Ich habe also z.B. eine List Seite - wie sie vom scaffolder erstellt wird. Nun gebe ich Zu einem Buch verschiedene Titel ein. Dazu habe ich das Buch mit bearbeiten (EDIT) angelkickt, in der untergeordneten Seite der abhängigen Tabelle gebe ich Buchtitel ein. Nachdem ich Save oder Back geclickt habe, möchte ich auf der Seite des Aufrufers rauskommen und die soll durch redirect: oder render: neu geladen werden. Mit history.back() bringe ich nur Chaos in die daten, weil ja niemand weiss, ob sie bereits geschrieben wurden oder nicht. Ich muss also den Caller übergeben, um ihn im Link dann einzubauen.
Geht das mit flash[@controller] oder mit etwas effektiveren??

Herzliche Grüße
Theo


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 17 Okt 2005, 16:07 
Offline
Böser Admin
Benutzeravatar

Registriert: 29 Jul 2005, 22:41
Beiträge: 2065
Wohnort: Beijing
Ich hab mal einen Loginmechanismus implementiert der ungefähr das gleiche gemacht hat. Dabei hab ich die angeforderte Url mithilfe von @request.request_uri im @session Objekt gespeichert. Wenn der User sich dann ordentlich angemeldet hat, leite ich Ihn zu der von Ihm angeforderten Seite zurück.


der
Daniel


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 18 Okt 2005, 17:15 
Offline
Lehrling

Registriert: 17 Okt 2005, 10:43
Beiträge: 54
Wohnort: Dahlen
Hallo allseits, :)

nochmals vielen Dank für die beiden Hinweise. Ich hab auch etwas rausbekommen...

zu 1. Ich habe rausgefunden, dass :confirm in jedem Falle die eingebaute Message überschreibt. Das heißt auch, dass ich die Kernel-Bibliotheken ändern kann, dann habe ich deutsche Fehlermeldungen (ich weiss, es ist vorerst keine professionelle Lösung...).
zu 2. Danke an Daniel. Die Methode mit dem @request.request_uri ist gut. Jetzt muss ich nur noch einen Caller-Stack in der Session einrichten, so dass ich kompliziert verschachtelte Seitenaufrufe abhängiger Objekte durchführen kann...

Herzliche Grüße
der Theo :wink:


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 19 Nov 2005, 22:17 
Offline
Nuby

Registriert: 19 Nov 2005, 22:03
Beiträge: 2
Wohnort: Wien



redirect_to :back


Siehe auch http://api.rubyonrails.com/classes/ActionController/Base.html#M000174


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 21 Nov 2005, 11:05 
Offline
Lehrling

Registriert: 17 Okt 2005, 10:43
Beiträge: 54
Wohnort: Dahlen
Hallo

Das ist eine sehr effiziente Lösung! Genau soetwas habe ich gesucht...

Danke!
Theo


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 22 Nov 2005, 00:22 
Offline
Obfuscator
Benutzeravatar

Registriert: 23 Okt 2005, 13:38
Beiträge: 571
Wohnort: Bern (CH)
Zitat:
Z.B. funktioniert @controller nicht, wohl aber @Person und dergleichen


Ist es nicht so, dass bei @Person automatisch nach dem Accessor id gesucht wird, wenn nur ein Objekt übergeben wird?




link_to 'x', @person


sollte also dasselbe sein wie




link_to 'x', @person.id


Wenn @controller also keinen id Accessor hat, führt das zu einer Fehlermeldung.
Oder tappe ich völlig im Dunkeln? Bin selber noch Rails Newbie... :oops: :)

_________________
www.josh.ch - Personal Web
www.incense.ch - Web development (to come)
www.ayom.com - Professionelles deutschsprachiges Webmaster Portal

"Eine Uhr, die stehen bleibt, zeigt 2x täglich die korrekte Uhrzeit an. Das ist besser als eine Uhr, die falsch geht." :-)


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: 22 Nov 2005, 10:28 
Offline
Lehrling

Registriert: 17 Okt 2005, 10:43
Beiträge: 54
Wohnort: Dahlen
Hi Josh,

beim erneuten Lesen meiner damaligen Anfrage (ich bin auch neu in Rails...) ist mir aufgefallen, dass ich doch einige Sachverhalte "etwas" unklar dargestellt habe weil ich nicht aufmerksam genug die Docs gelesen hatte.

Mittlerweile habe ich im Ruby-Handbuch und in den Rails-Klassen mal nachgesehen, wie man Objekte an partials übergibt. Das funktioniert nun mittlerweile sehr gut. Jedoch habe ich nicht alle Probleme lösen können....

Eigentlich habe ich in meiner Anfrage zwei Probleme durcheinandergebracht.

1. ich wollte in einem partial die laufende controller.action_name anzeigen. Da gab es immer einen Syntaxfehler, da das Partial keinen Zugriff auf seinen rufenden controller und somit auf @controller.action_name hatte. Mittlerweile habe ich das Problem anders gelöst.

2. Ich habe innerhalb meines sehr großen Objektbaumes auch Adressen (von Bibliotheken) zu speichern. Das ist eher ein Standardproblem (dachte ich). Jede Adresse bezieht sich auf einen Personennamen. Und so sind wir beim Problem @Person. Eine table persons, die man rails entsprechend der gegebenen Namenskonventionen anbietet um daraus ein model und einen controller generieren zu lassen, wird (so meine verwunderliche Beobachtung) nicht mehr nutzbar. Und zwar erstellt rails daraus nicht den Standardzugriff localhost/persons sondern ein Objekt und einen Controller namens peoples und den Controller localhost/peoples.rb. Diesen Sachverhalt konnte ich bisher nicht lösen und umgehe ihn nun durch eine table mit dem Namen names. Das geht gut...

Jedoch vielen Dank für Deine Hinweise.
Übrigens bin ich ein fleißiger Leser der Postings bezüglich Sessions/Authentication, weil dass bei mir als nächstes ansteht...

Aber zum Schluß vielleicht noch einmal eine andere Frage. Ich möchte ein Rails-Objekt erstellen, dass sich genau wie ein active-record-objekt verhält, jedoch seine Daten über eine komplexe SQL (min. 4kB) bezieht und NICHT auf eine gegeben Tabelle aufsetzt. Die SQL enthält mehrere JOINS durch UNION verknüpft. Auf die Felder möchte ich normal wie in einem active-record zugreifen können - allerdings nicht schreibend! Gibts da einen Lösungsansatz??

Herzliche Grüße
Theo


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach: