• Интернет-магазин на Ruby on rails. Нужен толковый совет?

    viktorvsk
    @viktorvsk
    После некоторого времени потраченного на поиски екоммерс на руби сделал вывод, что спри - это единственный вариант. По коду, по поддержке. Поддерживает и 3 и 4 рельсы. Завести можно и на mysql и на Postgres и на sqlite, даже на монго, думаю. Разве что, мне кажется, не стоит использовать Synergy (русский адаптированный форк), лучше оригинал.

    Вообще, считаю, что и рельсы, и нод и фласк\джанго иже с ними - не для типичных проектов (блоги, цмс, екоммерс) и пользователей, которым нужен юзер-френдли интерфейс везде. На каждом шагу визивиг. Плагины. Темы. И что б ни капли кода в глаза не видеть. Нетипичные проекты должныподдерживать программисты, поэтому все эти цмс и т.д. не имеют смысла. ИМХО.

    Насчет гемов я думаю, ваши страхи беспочвенны - перед тем, как ставить гем вы все равно зайдете на рубитулбокс, рубигемс или гитхаб. И там уже увидете, когда были последние изменения. Да и в просроченном геме бывает ничего плохого нет. Да и поддерживаются подавляющее большинство очень хорошо, а что не поддерживается - сразу куча инфы на первых страницах поисковика.
    Ответ написан
    Комментировать
  • Ruby On Rails: Отдать статический html из haml через Asset Pipeline?

    AMar4enko
    @AMar4enko Автор вопроса
    Проблема крылась в структуре директорий
    /app
        /assets
            /javascripts
            /stylesheets
            /templates
               /login.html.haml

    Файл шаблона был в templates.
    Если папку templates перенести в javascripts, то все начинает работать как надо. В том числе и asset_url('templates/login.html.haml')
    Ответ написан
    Комментировать
  • RubyMine и домашний сервер для разработки?

    estum
    @estum
    Не стоит работать дедовскими способами — редактировать и по сохранению сразу заливать через SSH или, упаси господи, FTP — как минимум это не удобно и чревато тормозами редактора.

    Поднимаешь сервер git, ставишь capistrano и пишешь к нему конфиг, гайдов туева хуча. Вот первый попавшийся на английском, вот на RailsCasts (pro), на хабре ищи сам, тут тоже должны быть.

    Если западло настраивать свой git-сервер, то делай приватные репозитории, например, на BitBucket`е (есть бесплатные) или Github`е (приватные начиная с $7). По ходу работы там все доступно объяснят, начиная с основ.

    Капистрано, если правильно его настроить, при деплое будет делать за тебя почти всю рутину, например: бэкапить, тянуть рабочую версию, ставить гемы из бандла, мигрировать базу, компилировать ассеты и перезапускать web-сервер. Тебе останется только сперва закоммитить изменения, запушить в удаленный репозиторий (почти уверен, что RubyMine все это может) и запустить cap deploy.
    Ответ написан
    Комментировать
  • Система рейтинга на Rails?

    MpaK999
    @MpaK999
    Буду!
    Тут их много, возьмите какая понравится www.ruby-toolbox.com/categories/rails_ratings
    Ответ написан
    2 комментария
  • Вопрос к Ruby девелоперам: за что Вы любите Ruby?

    jj_killer
    @jj_killer
    Еще одной киллер фичей является огромная инфраструктура и культура TDD и BDD. Практически все популярные gem'ы имеют в составе юнит-тесты или спеки.
    Ответ написан
    Комментировать
  • Javascript(Coffee) best practice: как мне сделать это лучше?

    sdevalex
    @sdevalex
    Используйте внутренние перменные и не плодите море строк, типа…
    $(this).data('place')
    

    Сделайте в одном месте
    var place = $(this).data('place')
    


    Уже после этого код станет в 2-3 раза чище.
    Ответ написан
    8 комментариев
  • Javascript(Coffee) best practice: как мне сделать это лучше?

    @hom9k
    Немного сложно это всё вот так воспринять без конкретного примера, поэтому просто предложу немного поправить код.

    $('.dropdown-toggle').parent().find('.dropdown-element').click ->
      $(@).parents('.btn-group').find('.dropdown-toggle').text(@textContent)
      
      attr = $(@).data('attribute')
      console.log('undef') unless $('.container').data(attr)
      container_data = $('.container').data(attr) || new Object
      change = $(@).data('change')
      place = $(@).data('place')
    
      if place
        container_data[place] ||= new Object
        container_data[place][change] = $(@).data(change)
      else
        container_data[change] = $(@).data(change)
    
      $('.container').data(attr,container_data)
    


    Можно еще парой комментов снабдить и уже намного лучше будет :)

    Не гарантирую, что все правильно, поскольку нет возможности проверить, но, наверное, как-то так.
    Ответ написан
    5 комментариев
  • Как отписаться от всех хабов?

    @marklarius
    $('.unsubscribeHub').each(function(i) { $(this).trigger('click'); });
    
    Ответ написан
    Комментировать
  • Какая IDE для Ruby?

    DevMan
    @DevMan
    Ответ написан
    Комментировать