26
Dez
09

RubyOnRails-Applikation für Facebook deployen

Du brauchst:

- RubyOnRails Projekt
- eine leere Facebook Applikation
- Webserver (Vorrausetzung: du kannst dein RubyOnRails Projekt schon deployen)

public/index.html löschen und map.root in der config/routes.rb festlegen

Facebook Applikation Einstellungen:

Canvas Callback URL
http://example.com/

Connect-URL
http://example.com/

Canvas URL
http://apps.facebook.com/applikationname/

Use FBML

Facebooker installieren:

ruby script/plugin install git://github.com/mmangino/facebooker.git

im Ruby-Projekt eine config/facebooker.yml erstellen: Vorlage

api_key Dein API key von Facebook
secret_key Der Schlüssel deiner Facebook-Applikation
canvas_page_name
Adresse deiner Facebook-Applikation

Ruby-Projekt-Einstellungen:

in der config/routes.rb muss canvas auf true gesetzt werden, damit die Applikation auf Facebook funktionieren kann

map.resources :articles, :conditions => {:canvas => true}

Nun ist unser Controller richtig verbunden, aber wahrscheinlich kommt dann der HTTP Fehler 406 beim Aufrufen der App (http://apps.facebook.com/applikationname/).


FBML wird nun mit Rails arbeiten können, aber die App kann trotzdem noch keine FBML-Seiten ausgeben. Nun müssen in den Controller-Dateien jedes format.html in format.fbml umgeändert werden.

Zum Beispiel: app/controllers/articles_controller.rb

def index
@articles= Articles.find(:all)
  respond_to do |format|
    format.fbml # index.fbml.erb
    format.xml  { render : xml => @articles}
  end
end

Der letzte Schritt ist nun alle view-Dateien umzubennen!

Also alle Dateien in den Unterordnern des views-Ordners von *.html.erb zu *.fbml.erb umbennen!
Und die im views/layouts liegende Datei ändern, denn Facebook mag keinen body-tag usw

Am Ende bleibt nicht mehr viel ürbig in der app/views/layouts/application.fbml.erb:

<p style="color: green"><%= flash[:notice] %></p>
<%= yield  %>

 

Deployen (auf den Webserver laden) und schon sollte die Applikation funktionieren!

 

 

--> Weitere Infos


1 Response to “RubyOnRails-Applikation für Facebook deployen”


  1. 1 robzi Feb 24th, 2010 at 22:38

    Sehr sehr hilfreich für mich bettina!

Leave a Reply