Seminarium 2009/2010

Uwaga: Passenger nie przechodzi przez Rack::Lint.

Wdrożenie z Apache & Passenger:

# /etc/httpd/conf.d/passenger.conf
<VirtualHost *:80>
  ServerName sinatra.local
  DocumentRoot /srv/www/sinatra

  RackBaseURI /seminarium
  RackBaseURI /rails3
</VirtualHost>

Aplikacja będzie dostępna z sub URI:

http://sinatra.local/seminarium/

Ale można też tak:

# /etc/httpd/conf.d/passenger.conf
<VirtualHost *:80>
  ServerName sinatra.local
  DocumentRoot /srv/www/sinatra/public
</VirtualHost>

Teraz instalujemy gem seminarium i wykonujemy kilka poleceń:

sudo gem install seminarium
mkdir -p /srv/www/sinatra/{public,tmp}
touch /srv/www/sinatra/tmp/always_restart.txt
cp config.ru /srv/www/sinatra

Teraz możemy sami w pliku config.ru podmontowywać kolejne aplikacje.

Ruby

Tematy

  1. FullerScreen. Jak piszemy rozszerzenia do Firefoxa (Safari/iPhone) Aplikacja Rails/Sinatry zarządzająca pokazami slajdów.
  2. Sphinx / ThinkingSphinx dla Datamapper: już jest Xapian dla Datamapper: nie ma?
  3. Gem ala ThinkingSphinx/Ultrasphinx dla search tak jak to jest zaimplementowane w PostgreSQL.
  4. Polski stemmer dla PostgreSQL / Sphinx / Xapian.
  5. Wczytywanie dużej liczby rekordów testowych do bazy danych. Gemy Faker i Populator -- polskie dane
  6. Rails 3 / Sinatra i CouchDB (couchrest).
  7. Dokumentowe bazy danych: CouchDB, gemy couchrest i dm-couchdb

Linki

  1. Charset table dla języka polskiego (plik konfiguracyjny)
  2. Sphinx reference manual
  3. Ultrasphinx, maintaned fork (plugin)
  4. Thinking Sphinx (gem)
  5. A Sphinx DataMapper adapter. Przykład w Sinatrze, Railsach z PostgreSQL

Sinatra Extensions

  1. Przygotować rozszerzenie dla static assets (tak jak w Rails): link, script, img. Skorzystać z rozszerzenia: sinatra-url-for. Zobacz dokumentacja do Passenger (broken links).