Rails 2.2

    А тем временем вышла новая версия Ruby on Rails.
    Полно новых и полезных функций: интернационализация, thread safety, совместимость с руби 1.9 и многое другое.
    Так же обновили документацию и гайды.

    Кстати, для чтобы воспользоваться полезностями интернационализации для великого и могучего, советую посмотреть в сторону гема russian.

    Обновляемся стандартно:

    gem update --system
    gem install rails


    Запись в рельсовом блоге
    27 полезных ссылок по новым рельсам
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 29

      +2
      не совсем верно… гем может не обновиться с версии 1.2 до 1.3.1… нужно еще поставить гем rubygems-update, запустить update_rubygems и только потом уже обновить рельсы.
        0
        вот здесь про это написано подробнее
          0
          Странно, обновлял на 2-х машинах с разными ОС, все прекрасно обновилось
            0
            у меня не хотело само обновляться с 1.2 до 1.3.1. Может еще будут такие же люди (судя по тому что написано в ссылке, я не одинок).
        0
        Прикольно, надо обновлятся =) i18n есть большой вери гуд!
          +1
          Вот поддержка Ruby 1.9 — это интересно. Ибо в 1.8 он весьма нетороплив, а с 1.9 — производительность на объектах как у Питона становится, ноздря в ноздрю: balancer.ru/tech/forum/2008/08/t63003--Proizvoditel~nost~-yazykov.Ob~ektnyj-Fib.html
            0
            Ну поддержка пока сильно сказано. Сами рельсы 1.9 тянут, но вот остальные гемы и лпгины пока нет. Обещают все это поправить к 2.3.
            0
            Ну Release Notes уже давно висят у них там
            Я больше всего рад миграциям в транзакциях — уж очень болезненая тема была.
            Хотя радоваться я радуюсь — а на сервере мускл, который не поддерживает это чудо.
              –2
              InnoDB может попробовать, вместо MyISAM?
                +1
                А разве InnoDB поддерживает транзакции для DDL?
                  0
                  Речь о DDL транзакциях, т.е. изменение структуры БД
                0
                >Хотя радоваться я радуюсь — а на сервере мускл, который не поддерживает это чудо.

                dev.mysql.com/doc/refman/5.0/en/sql-syntax-transactions.html?
                  +1
                  Миграции это в 90% DDL, а они в MySQL:
                  Some statements cannot be rolled back. In general, these include data definition language (DDL) statements
                  0
                  Вот рубеоиды и рельсоведы, ответьте мне пожалуйста на один принципиальный вопрос:
                  Я немного знаком с фреймворком и языком, но не в курсе, как это работает внутри. Рельсы это фреймворк одного прогона (при каждом запросе необходимые классы создаются заново) или все-таки все работает как контейнер сервлетов? Проще говоря, возможно ли держать в памяти долгоживующие объекты, не в сессии и не в базе и обращаться к этим объектам в течении долгого времени из нескольких контроллеров? Я — человек, избалованный явой. Если нет, то и ладно, а если да — то это было бы очень круто
                    0
                    Насколько я в курсе, и в RoR, и в Django объекты — общесерверный. В наше времы было бы странно, будь оно иначе.

                    У меня даже в PHP-фреймворке все объекты в memcached разделены, это уже не совсем та история :)
                      0
                      Не знаю, что за «ваше время» — в яве это есть, ничего странного.
                        0
                        Попробуйте расшифровать, что Вы хотели сказать этой фразой? Что на Java-фреймворках есть общие объекты? Это очевидно. Странно, если Вы считаете, что могут быть считающие иначе.

                        Или же Вы хотели сказать что-то другое?
                    • НЛО прилетело и опубликовало эту надпись здесь
                        0
                        Попробуйте Grails.
                        0
                        gem installupdate rails
                          0
                          не-не-не, разные вещи. Ваша команда проапдейтит существующую копию рельс, а инсталл поставит отдельно, что довольно удобно.

                          Например, сегодня обновился, все свиду хорошо, а вот плагин prawnto не работает. Пришлось пока попридержать коней, легко переключившись. А после апдейта пришлось бы все сносить. =)
                            0
                            не подскажете, как заставить prawnto рисовать русские буковки?
                          0
                          По поводу i18n в Rails. Если у меня сайт должен поддерживать и русский и француский, то мне надо ставить 2 гема (russian и french)? Backend выбирается автоматом, или надо вручную ставить или один или другой? А если строка в русском переводе не найдена, но мы знаем что пользователь знает француский, то как произойдёт смена backend?
                            0
                            Нет, не нужно — russian устанавливает кастомный бекенд для пары вещей которых нет в I18n по умолчанию, французский можно использовать как есть. Для фолбека по языкам нужно обрабатывать исключения I18n, так как единственно правильного рецепта нет.
                              0
                              А как мы можем использовать специфичные для русского языка фичи, если потом придёт франкоговорящий пользователь. Конечно можно тогда вставить проверку, какой язык сейчас используется. Но тогда для добавления нового языка, надо не править простой файл, а менять код, что плохо.
                                0
                                Посмотрите ридми, правда :-)

                                В Russian используется свой бекенд, который полностью совместим со стандартным — французский будет работать полностью, а другие языки опционально получают правила плюрализации прямо в таблице переводов и два вида названий месяцев.

                                Можно глянуть на github.com/svenfuchs/rails-i18n, там репозиторий всех языков, работающих с I18n из коробки.
                                  0
                                  Понятно, что Russian сохраняет обратную совместимость. Но получается, что для много языкового сайта, преимущества от Russian только в небольшом патче к логике стандартных функций. Я сторонник, что такой функционал должен быть внесён в основной код. Как, например, в моей библиотеке: патч для русификации класса Locale.
                                    0
                                    Я все-таки процитирую README, раз так лень его читать :-)

                                    Цель проекта—построить полноценную среду для русской локализации Ruby и Rails проектов, при этом используя минимально возможное количество хаков, сохраняя при этом поддержку локализации приложения на другие языки, а также *форсировать включение в основную ветку I18n и Rails всех функций локализации, необходимых для работы с русским языком*. (см выделение)

                                    Rails будет работать с I18n gem независимо от того что придумает кто-то еще, цель проекта была в объединении всех решений для локализации. Получилось, на мой взгляд, замечательно.
                                      0
                                      Ну что вы, я конечно же читал README. Вопрос только в том, что, если на сайт должен поддерживать много языков, то преимущества от Russian слишком небольшие для отдельного gem (впрочем, возможности Russian конечно существенны, но они не будут поддержаны другими backend’ами).

                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                          Самое читаемое