Блог Ерёмина Андрея обо всём на свете…

Posts tagged ‘ruby’

not a valid Win32 application. rails. Mysql


При использовании MySQL5  вместе с Rails 3.x при запуске сервера может появится ошибка:

193: %1 is not a valid Win32 application

Чтобы вылечиться от этой ошибки скопируйте все файлы из http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/ в папку <путь до папки с ruby>/bin

Оригинал решения: http://stackoverflow.com/questions/1208029/193-1-is-not-a-valid-win32-application-bug-with-a-new-rails-application

Here’s the answer that worked for me

Ruby 1.9.x: invalid multibyte char (US-ASCII)


При использовании русского текста в коде на Ruby 1.9.x возможно возникновение ошибки «invalid multibyte char (US-ASCII)». Лечится это очень просто — добавьте самой первой строкой в файле # coding: utf-8 и ошибка исчезнет.

И все же Apple: MacBook PRO


Я начинал писать этот пост раза 3, каждый раз пытаясь донести мысль, о том, что Microsoft — сакс, а Apple — форевер), однако, ничего идеального нет. Сейчас у меня есть 2 яблоко-девайса. Я доволен ими на все 90% (вот если бы ещё и цена была не такой кусачей), но я абсолютно не спорю, что в них есть недостатки — они есть везде, поэтому каждый выбирает то,чем ему удобнее пользоваться.

Мне нравится MacBook Pro и MacOS X, установленная на нём, за то, что мне не нужно «париться» из-за проблем с utf-8 в cmd и PowerShell’e, за то, что мне не нужно искать дополнительные компоненты (вроде всяких там фреймворков), чтобы установить ту или иную программу, за то, что мне не нужно думать куда ставить софт, куда этот софт будет класть свои временные файлы и как потом полностью удалить этот софт и весь мусор, что он успел оставить, за то, что мне не нужно думать где найти драйвера для того или иного устройства (если заявлено, что девайс работает с MacOS, значит он с ней работает, а не как с Windows — с Windows XP девайс работает, а под Vista и 7 производитель драйвера дописывать не стал), за то, что я могу использовать теже компоненты (gem’ы) для ruby, что и на Linux (т.е. на ОС, которая в 99,9% случаях будет стоять на продакшен-сервере), за то, что даже, когда свободных ресурсов у компьютера будет мало система всё равно работает плавно — без зависаний, без «падений», за то, что с каждой новой версией ОС интерфейс не перекраивается заново, а логически улучшается, за то, что, например, тачпад является частью ноутбука и ОС в целом, а не в виде неудобного девайса с кривыми драйверами, которые срабатывают не во всех приложениях.

Как я уже писал — каждый выбирает себе то, что ему удобнее. Я 11 лет пользовался продукцией Microsoft — да, это красиво, функционально, понятно в какой-то степени. Теперь мне хочется не только красоты, но и удобства, хочется чтобы самые маленькие, простые задачи ОС делала сама, а я мог на 100% погрузиться в работу — будь то программирование, просмотр фильмов, игры или посещение веб-сайтов.

 

 

RailsReady: рельсы-рельсы, шпалы-шпалы…


Известно, что разрабатывать под Ruby, как, собственно, и под PHP, лучше всего из *nix систем. Однако, на первоначальную настройку может уйти достаточно много времени.

Знающие люди рассказали о замечательном скрипте RailsReady для OSX, CentOS и Ubuntu.

https://github.com/joshfng/railsready

Достаточно лишь выполнить в терминале строчку:

wget —no-check-certificate https://raw.github.com/joshfng/railsready/master/railsready.sh && bash railsready.sh для Linux или curl -O https://raw.github.com/joshfng/railsready/master/railsready.sh && bash railsready.sh для OSX

и магическим образом вам установят RVM, Ruby 1.9.3, Git, ImageMagick, необходимые компоненты для sqlite, mysql, а также все основные гемы, нужные для разработки под Ruby on Rails.

P.S: Неожиданно обнаружил, что Windows самое худшее, что может быть для разработки на PHP и Ruby (

Rails: News такой News.


На днях столкнулся с очень необычной проблемой в Ruby on Rails. Было задание состряпать раздел с новостями для одного сайта. Казалось бы, что тут сложного? rails g model news… rails g controller news. Указать resource: news. Немного кода, html, js и всё. Но не тут то было!

Начал гуглить. В итоге, выяснил, что рельсы упорно считают, что news — это множественное число new, которое в свою очередь (если мы хотим всё сделать RESTful) имеет «системное» значение.

Все советуют использовать другое имя, например news_items.

Пруф линки:

uninitialized constant Rake::DSL — Ruby on Rails 3.x


Для 3-ей ветки фреймворка возможна ситуация, когда возникает ошибка

uninitialized constant Rake::DSL

Для того, чтобы её пофиксить нужно откатить rake до версии 0.8.7 (ниже 0.9.0), для этого добавьте в GemFile строчку:

gem «rake», «0.8.7»

ASCII-8BIT или другая неверная кодировка в PostgreSQL в RUBY


Недавно столкнулся с проблемой – почему-то все данные возвращались из базы данных в кодировке ASCII-8BIT, при этом в Linux и MacOS X всё отлично (кодировка UTF8). Я уж было подумал – Microsoft $^#%*$*# чтоб её, но потом выяснилось, что просто такой вот “кривой” гем.

В общем, советую использовать gem PG http://rubygems.org/gems/pg, темболее, что он стал “официальным”

Для установки: gem install pg

Не помешает и указать после инициализации коннекта кодировку:

@conn.exec("SET CLIENT_ENCODING TO ‘utf-8’;")
Encoding.default_external = "UTF-8"

где @conn – это заинициализированное соединение с базой

Устанавливаем GEM Postgresql в Ubuntu


Для того, чтобы работать с PostgreSQL в руби [Ruby] в Ubuntu Linux в консоле нужно выполнить 2 команды:

1) sudo apt-get install libpq-dev

2) sudo gem install postgres-pr

Облако меток