ActiveAdmin verstehen: Von der Application zur ResourceDSL

ActiveAdmin ist gut dokumentiert und auch ohne Verständnis der Interna gut zu benutzen. Spätestens wenn man eigene Erweiterungen schreiben möchte, muss man aber verstehen, wie die Engine funktioniert. Ein Anfang für Version 1.0.0.pre1: Das Modul ActiveAdmin realisiert mittels class << self eine singleton-ähnliche Instanz von ActiveAdmin::Application: module ActiveAdmin class << self def application @application ||=… ActiveAdmin verstehen: Von der Application zur ResourceDSL weiterlesen

10 Tote, zum Glück nur Männer!

Ich habe gerade eine interessante Kritik an Star Wars Episode II gesehen. Hier wird auf Anakin Skywalkers Geständnis eingegangen, dass er im Sandmenschen-Dorf nicht nur die Männer, sondern auch Frauen und Kinder getötet hätte. Dass ein angeblich moralpachtender Jedi in spe den Tot von Männern relativiert, indem er den Tot von Frauen und Kindern gegenüberstellt, empfanden komischerweise weder Filmschaffer Lucas noch… 10 Tote, zum Glück nur Männer! weiterlesen

Veröffentlicht am
Kategorisiert in Gesellschaft

Require und Rails

Rails‘ Autoloading macht einen guten Job, so dass man Abhängigkeiten selten per Hand auflösen muss. Will man aber etwa eine bestehende Modelklasse aus einer Engine öffnen um eigenen Code zu ergänzen, so muss das Original notwendigerweise vorhanden sein: # userengine/app/models/user class User < ActiveRecord::Base belongs_to :user_group end # railsapp/app/models/user require User::Engine.root.join(‚app‘, ‚models‘, ‚user‘) class User < ActiveRecord::Base… Require und Rails weiterlesen

Weniger Abstraktion ist manchmal mehr

Zunächst war ich kritisch: Kann ein Konferenzbeitrag über Routing-Ansätze brauchbare Erkenntnisse bieten? Schlussendlich ist das Routing ein sehr kleiner Teil und Rails liefert einen funktionierenden Ansatz mit. Performance-Sprünge im gesamten Kontext sind nicht zu erwarten. Interessant finde ich aber, wie durch das Entfernen der Abstraktion zwischen Router und Controller wesentliche Konzepte vereinfacht werden können. So lassen sich die… Weniger Abstraktion ist manchmal mehr weiterlesen

Konkatenation von Ruby-String-Literalen

Ich bin gerade über folgende Code-Zeile gestolpert und dachte schon etwas hilfreichem auf der Spur zu sein: irb 2.1.3 :010 > „aaa“ „bbb“ => „aaabbb“ Es wirkt, als füge Ruby aufeinanderfolgende Strings automatisch zusammen. Leider ist diese Funktion auf reine Stringliterale beschränkt,  so dass sie in der Praxis leider kaum einen Nutzen haben dürfte: 2.1.3 :018 >… Konkatenation von Ruby-String-Literalen weiterlesen

Deponia startet nur noch im Fenster

Am Wochenende habe ich mir bei gog.com das Begrüßungsangebot Deponia für 50 Cent gesichert. Spiel und Humor gefallen mir sehr, doch schon am zweiten Tag wollte es nicht mehr im Vollbild starten. Grund war wohl die viel zu hohe Auflösung, die meinen Laptopbildschirm übertraf und deshalb in einem nur halb sichtbarem Fenster endete. vim .local/share/Daedalic\ Entertainment/Deponia/config.ini RESOLUTION… Deponia startet nur noch im Fenster weiterlesen

Kreative Rails-Environments

Rails-Environments sind mächtig, einfach einzurichten und schnell zu wechseln. Fast zu schade sich auf die Klassiker Test, Development und Production zu beschränken. Auch nach zehnmaligem Ändern der Mail-Einstellungen kam bei uns niemand auf die Idee, dass hier eine zweite Development-Umgebung nach Aufmerksamkeit schreit. Mit erweitertem Horizont sind viele mehr oder weniger nützliche Umgebungen denkbar: Development… Kreative Rails-Environments weiterlesen

Pub-/Sub-System Faye: Ein kleiner Test

Faye-Server aufsetzen und starten: docker run -d -p 127.0.0.1:8000:8000 cravler/faye-app Ein Browsertest auf localhost:8000/pub-sub bescheinigt mir einen Bad Request. Scheint zu laufen. Auf einen Post-Request gibt es eine bessere Antwort: curl http://localhost:8000/pub-sub -d ‚message={„channel“:“/moin“, „data“:“Moin!“}‘ [{„channel“:“/moin“,“successful“:true}]

Docker ohne sudo

Wie wohl alle Docker-Pakete erfordert auch das PPA von Dotcloud Root-Rechte für alle Aktionen: me ~ docker ps FATA[0000] Get http:///var/run/docker.sock/v1.17/containers/json: dial unix /var/run/docker.sock: permission denied. Are you trying to connect to a TLS-enabled daemon without TLS? Um dies zu umgehen, kann man den eigenen Nutzer in die Gruppe docker aufnehmen: sudo gpasswd -a ${USER} docker… Docker ohne sudo weiterlesen

Datenbanken im Home-Verzeichnis speichern

Mit PostgreSQL ist es sehr einfach einen Datenbank-Cluster im Home-Verzeichnis eines Nutzers anzulegen. Dies kann sehr hilfreich sein, wenn beispielsweise nur das Home-Verzeichnis verschlüsselt wird und die Datenbank nicht offen herumliegen soll. Unter Ubuntu 14.10 installieren wir Postgre und betrachten das automatisch angelegte Standard-Cluster: sudo apt-get install postgresql pg_lsclusters Ver Cluster Port Status Owner Data directory Log… Datenbanken im Home-Verzeichnis speichern weiterlesen