March 30th, 2008
Chwile walczyłem z problemem wysyłania maili przez actionMailer. Rozwiązanie okazało się banalne,
ale dla początkujących trudne do przejścia. Ale od początku:
Wcześniej aplikacja była odpalana jako fcgi na tym samym serwerze na ktorym była domena, wiec o dziwo (!!!) bez ustawienia <code>ActionMailer::Base.smtp_settings</code> wszystko ładnie działało.
Problem pojawił się jednak przy przeniesieniu na inny serwer. Na początku w logach wszystko wyglądało ok, była treść maila i proste stwierdzenie “mail sent”. Pomimo tego żadne maile nie docierały. Zmiana hasła w ustawieniach smtp_settings też nic nie pomogła, nadal “mail sent”, a wyników jak nie było tak nie ma.
Rozwiązanie:
Z pomocą przyszło ustawienie:
ActionMailer::Base.raise_delivery_errors = true
i błąd zwracany przez aplikacje o nie udanej autoryzacji. Szybkie sprawdzenie danych do autoryzacji i… następna zagadka. Wszystko poprawnie ustawione, a maili jak nie było tak nie ma. Jak to przy wszystkich problemach z Railsami rozwiązanie jest bardzo proste: Chcąc się logować na konto user@domena.com w ustawieniach smtp pozycja: :user_name => “” powinna wyglądać :user_name => “user@domena.com” a nie jak można się było spodziewać :user_name => “user”.
Dzięki temu zrobiłem następny krok ku agile development 
Posted in Ruby on Rails | No Comments »
December 11th, 2007
Przy nowej aplikacji przyszło mi generować pdfa. Zarezerwowałem trochę czasu na to przewidując, że będą problemu. Po szybkim rozpoznaniu znalazłem wiele sposobów.
Sprawdziłem kilka z nich i okazało się ze jest problem z polskimi znakami, czego można było się spodziewać. Kolejne pare pytań do wujka google i w miare sensowny okazał się htmldoc. W skrócie przy htmldocu sprawa polega na zainstalowaniu zewnętrznej aplikacji, przygotowaniu bardzo ubogiego html i program htmldoc konwertuje html do pdfa. Na pierwszy rzut oka wszystko ok, instalacja pod windowsem poszła w miare bezproblemowo, potem stworzenie html i już ładnie śmiga.
Po próbie generowania wszystkiego przez metodę kontrolera okazuje się że IO.popen jest wykonywany po tej metodzie i nie można w ciele metody przekierować przeglądarki do pdfa bo go jeszcze nie ma.
Wszystko to dotychczas odbywało się lojalnie, próba zainstalowania htmldoca na serwerze site5 na początku się nie powiodła, ale po wymienieniu jednego maila z supportem wszystko się wyjaśniło.
Wpisując polecenie prosto z shella wszystko działało natomiast z rubego nic sie nie generowało. Po dokładnym przegrzebaniu się przez dokumentacje okazało się ze jest parametr HTMLDOC_NOCGI który należy ustawic na true. Tak też zrobiłem, ale… nic się nie zmieniło. Pomoc jaka przyszła z forum htmldoca też nie wiele pomogła.
Po 2 dniach wielkich problemów, za namową znajomego powróciłem do fpdf, która w rubym jest jako rpfdf. Opanowanie podstawowych metod i wygenerowanie czcionek z polskimi ogonkami zajeło mi 3 godziny. Instalacji na serwerze na dobrą sprawę nie ma, gdyż rfpdfa załącza się jako normalną klasę rubego. Ilość czcionek jest ograniczona tylko przez posiadanie plików tff. Dotychczas generowałem tylko ariala w dwóch wersjach, ale inne nie powinny powodować problemów.
Podsumowując w moim przypadku htmldoc okazał się wielkim nie wypałem, mimo początkowych szybkich rezulatatów, natomiast prawdziwym hitem okazało się rfpdf. Wszystko szybko, łatwo i przyjemnie, bez uciekania się do zewnętrznych aplikacji. Polecam wszystkim!
Wkrótce powinno uzbierać sie parę czcionek, które udostępnie “dla leniwych”.
Posted in Ruby on Rails | No Comments »
November 11th, 2007
Rozpocząłem swoją przygodę z Ruby on Rails.
Szukałem dobrej książki na początek, w helionie znalazłem Ruby on Rails - wprowadzanie.
Książka jest faktycznym początkiem przygody z Railsami, jednak sposób przedstawienia mnie nie zachwycił. Autor chce od razu powiedzieć dużo, według mnie za dużo, chce, alby czytelnik wszystko zrozumiał.
Przeczytam tą książkę kiedyś jeszcze raz, na razie mam bardzo mieszane uczucia.
Na pierwszą książkę polecam coś z tutoriali ogólno dostępnych, a potem Agile Web Development with Rails.
Posted in Ruby on Rails | No Comments »