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

Замечаю что многих желающих перейти на RoR мучает проблема выбора нужных инструментов, и по этому поводу хотелось бы собрать несколько ваших ценных советов, чтобы просуммировать материал в одной хорошей статье на эту тему. Многим бы помогло при «свитче» на RoR.



Уважаемые знатоки!

Подскажите пожалуйста как будет быстрее и элегантнее всего развернуть интернет-магазин на ruby on rails.



Главная цель

Быстро и без пыли заиметь адекватный бэкенд для добавления/редактирования товаров. Также система пользователей, шаблоны ну и прочие сопутствующие функции.



Выберем из существующих RoR-CMS

Конечно хотелось бы смотреть в сторону довольно популярной Refinery CMS, потому что пока это единственная система на Rails 3, среди тех что я видел. В плане расширений у них есть раздел engines, но в списке нет ничего похожего на «shop/e-commerce».



Так же привлекла внимание т.н. Radiant CMS. Как минимум наличием нужного расширения. Но есть большой(?) минус: она не переписана на Rails 3. Нужно ли с ней возится? Просто мне лично кажется, что полезнее изучать актуальные технологии.



Видел еще Spree — движок непосредственно для интернет-магазина. Но там, вроде, тоже не Rails 3.



Мои текущие соображения

Мысль к которой сейчас склоняюсь: взять именно refinery и написать свой engine магазина для нее. Заодно опыта поднаберусь в ruby/ror. А в плане админки — в системе и так уже почти все что надо есть, возни с интерфейсом будет не много.

Оффтоп: использование engines в RoR это как, хороший стиль?



На последок: буду уж очень признателен

Хорошим советом будет если кто скажет хороший набор gem'sов на всякие случаи жизни (чтобы я чего-нибудь из того что deprecated, не дай бог, не поставил :-) Ну или ссылка на ресурс со списком актуальных расширений была бы еще полезнее!



Направьте новичка :-)



Спасибо!
  • Вопрос задан
  • 30507 просмотров
Пригласить эксперта
Ответы на вопрос 8
@Renius
дурак восторженный
1. Админка для Rails приложения есть в самом Rails — scaffold.
2. Я против использования ЦМС в средах с высокой абстракцией, тем более когда речь идет о средах с настолько высоким уровнем вложенного функционала как Rails. Поясню.
Вам нужен набор для рисования — ЦМС-стайл (в него входит, карандаши 65536 уветов, краски 16м цветов, фломастеры, аэрограф, кисти из 100500 видов шерсти животных, чертежная доска, студия по улице набережная д17, кв 33 с пассивным и активным освещение, заказанная выставка в Париже с открытой датой, 5 предоплаченных лотов в любом из аукционных домов Кристис, Сотбис, Бонхамс на выбор, оплаченные билеты на самолет.
Но если вам нужно рисовать на стене соседнего дома, абстрактные картины баллончиком, то все это вам не нужно вообще.
Не смотря на то что это все называется емким словом: «Искусство», вам этот ЦМС… ммм… не совсем подходит.
Вам не нужны оплаченные билеты на самолет, вы больше времени потратите если будете их сдавать в авиакассу, чтобы вам не названивал оператор:«Вы чо ваще, собираетесь лететь, не?». Вам нужена пара гемов, подъемник и балончик с краской. Зачем ради этого городить ЦМС я не понимаю. Вам достаточно написать в Gemfile
gem 'spray-paint'
gem 'lift'


и эти гемы есть, вы же не единственные кто пытается заниматься рисованием баллончиком с краской.
Тем более что прикручивать spray-paint и lift к ЦМС всеравно придется. А проблемы есть, и в цмс и без нее, и размер их одинаков, и никуда эти проблемы не денутся.

3. последний магазин который я использовал содержал:
gem 'devise' # аутентификация
gem 'haml-rails' # HAML вместо HTML
gem 'sass-rails' #sass вместо css
gem 'coffee-rails' #coffeescript вместо javascript
gem 'postmark-rails' # рассылка почты
gem 'russian' # потому что мы русские
gem 'paperclip' # для обработки картинок
gem 'delayed_job_active_record' # для отложенных задач
gem 'delayed_paperclip'    , '2.4.5.2', :git => 'git://github.com/tommeier/delayed_paperclip', :branch => 'fix_312' # для отложенной обработки(ресайза) картинок
gem 'rufus-scheduler' # типа крон, только внутри рабочего rails приложения
gem 'twitter-bootstrap-rails' # чтобы сверстать все, включая админку
gem 'aws-sdk' # для выгрузки картинок на S3
gem 'quiet_assets' # чтобы логи не шумели

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

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

Насчет гемов я думаю, ваши страхи беспочвенны - перед тем, как ставить гем вы все равно зайдете на рубитулбокс, рубигемс или гитхаб. И там уже увидете, когда были последние изменения. Да и в просроченном геме бывает ничего плохого нет. Да и поддерживаются подавляющее большинство очень хорошо, а что не поддерживается - сразу куча инфы на первых страницах поисковика.
Ответ написан
Комментировать
MpaK999
@MpaK999
Буду!
Spree вроде как под Rails 3 тоже работает
github.com/spree/spree#readme
«Start by adding the gem to your existing Rails 3.x application's Gemfile
gem 'spree'»

сам пока не пробовал
Ответ написан
@Termux
https://www.ruby-toolbox.com/categories/e_commerce
Spree лидирует, но его развитие "заглохло",
а Солидус (или солидас, назван в честь римской(?) монеты)
-продолжение

Сейчас Spree называется Solidus - это такой fork.

YouTube: Видеокурс Solidus.io E-Commerce от Codemy.net School
Github: https://github.com/solidusio/solidus
Ответ написан
Комментировать
@ssh0
Полезнее будет написать/ собрать из гемов свой велосипед, вот полезная статья — habrahabr.ru/blogs/ror/112481/
Ответ написан
@IgorStepin
Ответ написан
Комментировать
@Source
Видел еще Spree — движок непосредственно для интернет-магазина. Но там, вроде, тоже не Rails 3.

Давно уже Rails 3. Кроме того, Spree вполне можно интегрировать с Refinery. Что будет гораздо полезнее для сообщества, чем писать ещё одну простенькую корзину исключительно под Refinery.
Ответ написан
Комментировать
@craft37
Кто-нибудь пробывал использовать Shoppe? https://tryshoppe.com/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы