Frage

Mit Rails 3.0.3 in Kombination mit Edelsteinen wie devise ich keine Flash-Mitteilungen erhalte. Nun ich erwähnt, devise, weil sie die Cookies verwendet, steuert mich zu authentifizieren.

Nun ist die Rails-Anwendung ist ein bisschen speziell, da seine Verwendung von Sub-Domains . Was sie tun, ist die Anwendung angeben, an welchen Unternehmen ein Benutzer durchsuchen. Ein Beispiel: mycompany.theapp.com/projects/3/ <- Projekt 3 des Unternehmens "mycompany"
. Wenn sich ein Benutzer anmeldet er / sie ist gerichtet auf theapp.com/overview <- nicht Sub-Domain
Jeder Hinweis Es tut zeigen, warum also nicht auf Sub-Domain-Seiten?

Das ist also der Code auf Sub-Domain-Seiten verwendet. Genau das gleiche wie würde man es auf Nicht-Sub-Domain-Seiten setzen. Der Code in der Steuerung:

def update
  redirect_to [@project], :notice => "Project #{@project.name} updated."
end

Die Layouts / application.html.erb

<% flash.each do |type, message| %>
  <%= content_tag :div, message, :class => "flash #{type}" %>
<% end %>

Ich habe auch die folgenden, um herauszufinden, was passiert:

flash.to_yaml
# Result: --- !map:ActionDispatch::Flash::FlashHash {} 

Da anscheinend devise verwendet Flash [: notice]. Ich habe auch versucht, dass (weil das für devise arbeitet)

flash[:notice] = "Project #{@project.name} updated."
# Result: --- !map:ActionDispatch::Flash::FlashHash {} 

Nun werden die Mitteilungen Sie erhalten durch Cookies oder Session-Daten senden, die nicht gut auf die Sub-Domains übertragen wird? Da das Bearbeitungsformular des Projektes ist auf mycompany.theapp.com/projects/3/edit/
Und es sendet mir mycompany.theapp.com/projects/3/ (ohne Angabe)

Es kommt auf Ubuntu 10.10 mit „Schienen-Server“, Passagier mit nginx und sogar auf einer Mac-Maschine (aber jemand anderes getestet, dass).

Wer Pflege zu erraten?

War es hilfreich?

Lösung

Anscheinend war es nicht wirklich etwas falsch mit der Konfiguration. Wir entfalteten sie auf einem Server ganz schnell, Produktionsmodus, und es funktionierte, viel zu unserer Überraschung. Die Hinweise wurden in allen Bereichen zeigt sich.
Es ist etwas mit localhost Domains, war ich lvh.me verwenden, dass Rails bekommen nicht ganz.

Der Hinweis war in einem (letzten) Kommentar zu Railscast:

http://railscasts.com/episodes/ 221-Domänen-in-Schienen-3? view = Kommentare # comment_146276 Es ist eine wichtige Sache zu wissen, ob Sie wollen Aktien Sitzungen zwischen Subdomains auf localhost. Mit: Domain => „.Lvh.me“ nicht immer funktioniert (in meinem Fall ist es nicht), so dass Sie zu haben Konfigurieren Sie Ihre Umgebung als beschrieben in blog.plataformatec.com.br/2009/12/subdomains-and-sessions-to-the-rescue /

@ David Sulc wurden die Benutzer angemeldet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top