Насколько лучше Rails для интерактивного сайта по сравнению с Django? - PullRequest
0 голосов
/ 28 января 2011

Только что получил новый проект веб-сайта для внутреннего пользования моей компанией. Весь сайт не так уж сложен, но требует довольно много взаимодействия в реальном времени. По сути, это интерактивная таблица временных шкал, где мы можем свободно перетаскивать каждый элемент для перемещения и изменения его размера.

Сначала я хотел использовать эту возможность для изучения Python + Django (у меня есть огромное количество времени), но потом я прочитал вокруг, и многие люди упомянули, что Rails лучше для создания насыщенного интерактивного сайта.

Итак, для веб-сайта с таким большим количеством интерактивных перетаскиваний Rails действительно лучший выбор? Является ли Rails встроенный ajax намного проще в работе по сравнению с Django + jQuery? Насколько гибким и настраиваемым является встроенный в Rails Ajax? Кстати, я хочу выучить RoR так же, как Python.

Ответы [ 6 ]

6 голосов
/ 28 января 2011

Я не думаю, что функциональность AJAX определит, какую среду вы предпочитаете.

Я не могу ответить на большинство ваших вопросов, касающихся ajax, но все же думаю, что этот пост может быть полезен для вас: он подчеркивает огромную разницу между ROR и django - в основном RoR использует магию, django - нет.

Я предпочитаю Джанго именно для этого. Другие могут предпочесть RoR по той же причине, что и я.

Что не так с "магией"?

Разработчики Rails придерживаются мнения что этот вид "магии" является хорошим вещь, потому что это облегчает быстро заставить что-то работать, и не утомляет вас множеством деталей если вы не хотите, чтобы достичь и начать переопределяющие вещи.

Разработчики Django придерживаются мнения что такого рода "магия" плохая вещь, потому что на самом деле не спасает все столько времени (несколько импортных заявления не имеют большого значения в грандиозная схема вещей), и имеет эффект сокрытия того, что на самом деле происходит дальше, усложняя работу переопределить вещи или сложнее отладить если что-то пойдет не так.

Оба из них, конечно, действительны позиции, и вообще это кажется, что люди просто естественно тяготеют к одному или другому; те кто любит "магию" собираться вокруг Rails или фреймворки, которые пытаются подражать тем, кто не собирается вокруг Django или рамки, которые пытаются подражать этому (и, в более широком в смысле, эти позиции несколько стереотипный Ruby и Python Разработчики; Разработчики Ruby стремятся нравится делать вещи в одну сторону, Python разработчики, как правило, любят делать вещи другой путь).

Так что я думаю, что один кликнет для вас независимо от поддержки ajax из коробки.

5 голосов
/ 28 января 2011

Говоря как о человеке, который в основном работает на Rails, я бы сказал, что каждый день должен уделять внимание каждому фреймворку, следовать скринкасту или руководству по началу работы или подбирать книгу. (Для рельсов я рекомендую Beginning Rails 3 ). Затем продолжайте идти с тем, с кем вам удобнее.

Один удивительный ресурс рельсов имеет Railscasts . Railscasts практически в одиночку преобразовал меня из PHP в ROR. Я не знаю, есть ли в Django такой же объем качественных скринкастов или нет.

Все фреймворки довольно сильно сфокусированы на серверной части уравнения. Теперь в Rails есть много вещей, которые помогают сделать написание представлений (ваши вещи перетаскивания) приятными, такие как HAML (фантастический язык шаблонов) ... и хотя я не знаю достаточно, чтобы публиковать ссылки, я уверен, Django есть похожие помощники. Стоит отметить, что как Django, так и Rails могут использовать jQuery или любую другую инфраструктуру javascript.

Но, в конце концов, просто из-за того, что сеть не имеет состояния, будет определенная степень независимости между вашими клиентскими шаблонами и javascript и тем, что обслуживает их со стороны сервера.

Настоящий вопрос, на котором вы, вероятно, должны быть сосредоточены, заключается в следующем: хотите ли вы стать ниндзя jQuery, или вы хотите повысить уровень внимания и сосредоточиться на самом Javascript, возможно, используя наборы инструментов, такие как MooTools или Prototype. Перетаскивание осуществляется на стороне клиента, поэтому вам придется принимать самые сложные решения.

Удачи!

3 голосов
/ 29 января 2011

Раньше я беспокоился о таких вещах и все время пробовал новые фреймворки, потому что люди говорили, что это было большим улучшением по сравнению с последним, которое я использовал, пока не понял, что ничего не делал.Теперь я просто выбираю один и придерживаюсь его.Тот факт, что я знаю его намного лучше, чем у других, означает, что я более продуктивен, хотя другие фреймворки, вероятно, содержат приятные маленькие приемы и ярлыки, и, поскольку я знаю это лучше, я могу быстрее отлаживать проблемы.Я пытаюсь сказать, что почти каждый популярный веб-фреймворк может делать все, что вы хотите.Некоторые из них лучше других, но что действительно важно, так это то, что вы станете экспертом по крайней мере в одном из них.Умение играть много не полезно, вам действительно нужно знать это изнутри и снаружи.Внесение некоторого кода в проект помогает этому процессу.

2 голосов
/ 29 января 2011

Django не работает с интерактивными веб-приложениями, он не зависит от всей части "внешнего интерфейса", это делается в Javascript практически без поддержки Django (за исключением передачи данных из вызовов AJAX).

Поэтому, если вы хотите использовать Django для этого, вам придется не только изучать Python, но и изучать множество Javascript.

Мне нравится это решение, так как рукописный Javascript чувствует себя намного яснее, чем любой из этих генераций.инструменты для меня, плюс есть много библиотек, которые делают написание современных графических интерфейсов Javascript на одном дыхании, посмотрите на Jquery UI или ExtJS.данные в формате JSON, ничего больше.

2 голосов
/ 28 января 2011

В основном зависит от того, с каким языком программирования вы предпочитаете работать и с которым вам удобнее всего.Некоторые предпочитают гибкий синтаксис Ruby, другие - чистоту Python.Также необходимо учитывать производственную среду (то есть, на какой ОС она будет размещаться).

1 голос
/ 28 января 2011

Рельсы и Джанго хороши.Попробуйте их обоих и посмотрите, что вам больше нравится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...