Entwicklung & Design

Erfahrungsbericht zu Ruby on Rails beim Rapid-Prototyping: In zehn Tagen von Null auf Startup

Seite 5 / 6

User Model erzeugen
ruby script/generate model location name:string street:string zip:string city:string lng:float lat:float

Listing 1

Danach die Migration ausführen, damit die Datenbanktabelle angelegt wird:

Migration ausführen
rake db:migrate

Listing 2

Um Geokit zu installieren, muss man folgendes Skript im Projektordner ausführen. Danach muss man zum Beispiel einen Google-Map-Key in der Datei environment.rb eintragen:

Installation von Geokit
ruby script/plugin install svn://rubyforge.org/var/svn/geokit/trunk

Listing 3

Als letztes verändert man das User-Model:

User.rb
class Location < ActiveRecord::Base
	before_save :geocode_address # Callback, welches die Methode geocode_address vor dem Speichern aufruft
	acts_as_mappable # Einbindung des Plugins
	def geocode_address
		geo=GeoKit::Geocoders::MultiGeocoder.geocode(self.street.to_s << ", " << self.zip.to_s << " " << self.city.to_s << " Germany") # Aufruf, um Koordinaten abzufragen
		self.lat, self.lng = geo.lat,geo.lng if geo.success # Die Werte für lat und lng werden dem User-Objekt hinzugefügt
	end
end

Listing 4

Nach diesen wenigen Schritten werden beim Anlegen einer Location die Koordinaten der Adresse in der Datenbank mitgespeichert. Aus Vereinfachungsgründen wurde der Umfang des Beispiels auf das Wesentliche reduziert und deckt sich somit nicht mit der Implementierung von indawo. Was aber deutlich wird: Die Umsetzung einer solchen Aufgabe geht sehr schnell von der Hand.

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!

Hey du! Schön, dass du hier bist. 😊

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team bestehend aus 65 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Danke für deine Unterstützung.

Digitales High Five,
Stephan Dörner (Chefredakteur t3n.de) & das gesamte t3n-Team

Anleitung zur Deaktivierung