Problem mit Mongrel und Rails 2.3.9

Wenn man in zweierlei Hinsicht ein wenig altmodisch ist, indem man zum einen noch die letzte Version von Rails 2, nämlich 2.3.9 verwendet, und zum anderen noch das Deployment der App mit dem guten alten mongrel_cluster implementiert hat, kommt es zu einem eigenartigen Phänomen:

Die Rails-Anwendung funktioniert einwandfrei, im Browser ist aber der von der Anwendung herausgerenderte HTML-Quelltext der Seite (oder gar nix) zu sehen. Schaut man dann in log/mongrel.PORT.log, so findet man die Ursache des Übels:

Error calling Dispatcher.dispatch 
#<NoMethodError: private method `split' called for nil:NilClass>

Oder ähnliches. Das Problem liegt irgendwo im Zusammenspiel von ActionPack und Mongrel (in der Cluster-Variante), das seit Rails 2.3.8 nicht mehr korrekt funktioniert.

Die Lösung für dieses Problem findet sich beim »P Coder«. Man benötigt einen Patch in einer Datei config/initializers/mongrel.rb. Damit funktioniert es dann wieder einwandfrei.

Tags: rails239 mongrel rails2


RailsConf 2010: David Heinemeier Hansson

Langsam wird es ernst: Rails 3 steht vor der Tür wie sonst nur der Nikolaus. David Heinemeier Hansson redet in diesem auf Youtube abgelegten Talk auf der Railsconf 2010 über seine Lieblingsfeatures und gibt am Ende, nach dem Release ist vor dem Release, sogar einen Ausblick auf die Version 3.1 ;).

Tags: rails3 railsconf


Rails 2.3.3

Ganz frisch: Rails 2.3.3. Neben »Bug-Fixes« gibt es ein paar neue Features, besonders die neue touch-Methode sieht ausgesprochen nützlich aus.

Tags: rails2.3


RedCloth, Rubygems und die »CamelCase-Falle«

Manchmal leben gem-Maintainer ihre Kreativität am Namen ihres digitalen Kleinods aus. So heißt das Rubygem für RedCloth eben »RedCloth«, in CamelCase. Unter bestimmten Umständen in bestimmten Ruby-Installationen (keine Ahnung, wann exakt) aber legt Rubygem es eben nicht unter dem CamelCase-Namen ab, sondern in Kleinbuchstaben. Das Problem dabei: Das Gem funktioniert nicht, man rauft sich die Haare weil es nicht läuft, obwohl man doch das richtige Gem installiert hat!

Lösung: Man lege einen Symlink mit der korrekten Schreibweise an, wenn sich in /usr/lib/ruby/gems/1.8/gems/RedCloth-3.0.3/lib nur ein »redcloth.rb« statt des gewünschten »RedCloth.rb« befindet:

cd /usr/lib/ruby/gems/1.8/gems/RedCloth-3.0.3/lib
ln -s redcloth.rb RedCloth.rb

Die einzig richtig nutzbare RedCloth-Version ist übrigens 3.0.3. Wenn man sich nicht in die Geheimnisse des anders funktionierenden RedCloth 4 einarbeiten möchte, sollte man diese installieren:

gem install RedCloth -v 3.0.3

Lieber RedCloth-gem-Maintainer, wie wäre es damit, die Kreativität im Ruby-Code auszutoben und den Namen des Gem ganz schnöde in Kleinbuchstaben zu halten? ;)

Tags: gem ruby


sortable_element und :hoverclass

Kleine Falle beim Scriptaculous-Helper sortable_element: Möchte man dem kleinen Helper eine CSS-Klasse als :hoverclass mitgeben, so muss man diese zweifach in Anführungszeichen packen, man achte beim folgenden Beispiel genau auf :hoverclass:

<%= sortable_element("nicethings", 
:url => sort_nicethings_path, 
:ghosting => true,
:hoverclass => "'niceclass'") %>

Tags: scriptaculous tipps


Archiv-Site

railssprech.de wird aktuell nicht mehr gepflegt. Diese Site ist das Archiv dieses Weblogs, das von 2009 bis 2010 aktiv war.

Kontakt

Lizenz

Creative Commons License
Die Einträge von railssprech.de stehen unter einer Creative Commons 3.0 Deutschland-Lizenz unter folgenden Bedingungen:

Tags/Themen

railssprech.de [ Start | Kontakt | Impressum | Datenschutz ]
Inhalte lizenziert unter CC 3.0 DE by-nc-sa