Комментарии 39
Если еще не добрались, то рекомендую как начинающему почитать Agile Web Development with Rails (AWDR), своего рода «библия» по рельсам :)
+3
Добрался. Хорошая книга. Но по третьим рельсам будет только четвёртое издание, которое выйдет только в январе.
+1
Да, 4е издание как раз по 3м рельсам и сейчас оно в статусе beta. Но если не смущают электронный варианты книги, то уже сейчас ее можно спокойно читать, не смотря на то, что beta.
+1
Не вижу ссылки на скачивание.
+1
А что такое «скаффолдер»? в гугле не нашел…
-1
scaffold — генератор стандартного набора файлов: контроллер/модель/представления/миграции/тесты со стандартным REST набором методов
0
В дополнение к предыдущему комментарию:
То есть мы просто пишем в консоли
и сразу после этого имеем возможность добавлять/смотреть/редактировать/удалять статьи браузере.
Контроллер, миграция, соответствующие шаблоны с формами — всё это написано за нас.
То есть мы просто пишем в консоли
rails generate scaffold Article title:string body:text published_at:datetime
и сразу после этого имеем возможность добавлять/смотреть/редактировать/удалять статьи браузере.
Контроллер, миграция, соответствующие шаблоны с формами — всё это написано за нас.
0
спасибо, а миграция — это то же самое, что маршрутизация URL?
-1
миграция это SQL инструкция, написанная на ruby
-1
Миграции нужны для того, что бы версионировать структуру базы данных. Например Вы хотите создать модель. Для этого нужна таблица в БД. Что бы на production сервере не создавать её руками Вы пишете миграцию, которая будет эту таблицу создавать.
Если снова нужны изменения в структуре БД — Вы снова пишете миграцию. Таким образом мы получаем набор миграций. В rails есть возможность запустить на выполнение все доступные миграции в порядке, в котором они создавались и получить нужную структуру БД.
Миграции пишутся на ruby, что позволяет во многих случаях использовать их для других БД, т.е. Вы разрабатывали для sqlite, а потом выполнили для MySQL, и всё работает.
Миграции можно выполнять как вперёд (например создать таблицу), так и назад (удалить эту же таблицу). Это позволяет переходить к определённым версиям, если можно так выразиться.
Если снова нужны изменения в структуре БД — Вы снова пишете миграцию. Таким образом мы получаем набор миграций. В rails есть возможность запустить на выполнение все доступные миграции в порядке, в котором они создавались и получить нужную структуру БД.
Миграции пишутся на ruby, что позволяет во многих случаях использовать их для других БД, т.е. Вы разрабатывали для sqlite, а потом выполнили для MySQL, и всё работает.
Миграции можно выполнять как вперёд (например создать таблицу), так и назад (удалить эту же таблицу). Это позволяет переходить к определённым версиям, если можно так выразиться.
+2
кстати на safaribooks можно почитать
0
Есть отличный, недавно вышедший учебник по Rails 3, охватывает все аспекты разработки и бесплатный для чтения online. Так же есть pdf версия и cкринкасты именно под него. Очень рекомендую
railstutorial.org/book
railstutorial.org/book
+7
Ребят, не сочтите за попытку холивара, но может быть фанаты рельс могут подсказать в чем преимущество по сравнению с Джангой и вообще руби по отношению к питону?
0
Не знаю как дела обстоят в Джанго, но в рельсах, нравится метод «постепенного» развития схемы БД через миграции.
Если собрать с каждого фаната рельсов по одному, что им больше всего нравится, будет вам своеобразный, субъективный список преимуществ рельсов.
Если собрать с каждого фаната рельсов по одному, что им больше всего нравится, будет вам своеобразный, субъективный список преимуществ рельсов.
+1
не думаю, что стоит их противопоставлять, удачные решения имеют свойство переносится из одной системы в другую, если есть возможность, лучше изучить обе, для кругозора. Если нет — просмотреть как решаются те или иные задачи, где подходя кажется яснее и логичнее — то и брать.
0
Для этого нужно где-то взять людей, которые знают одновременно и рельсы и джангу :-))
+1
Руби по отношению к питону — тут кому что больше нравится. Я, например, нахожу синтаксис руби красивым и логичным, а питоновский по сравнению с ним, довольно корявым и местами явно антилогичным и искусственным. А есть люди, которые думают ровно наоборот :). Пока не попробуешь — не узнаешь.
Джанга построена несколько на других принципах, чем Рельса поэтому лобовое сравнение вряд ли получится.
А преимущества — какие преимущества вы ищите? :) Если не в вебе, а на десктопе, то в питоне, например, есть PyQt, а в руби только жалкое подобие Qt'шного биндинга, что меня периодически огорчает (наоборот преимущество у питона). А так… Не знаю…
Джанга построена несколько на других принципах, чем Рельса поэтому лобовое сравнение вряд ли получится.
А преимущества — какие преимущества вы ищите? :) Если не в вебе, а на десктопе, то в питоне, например, есть PyQt, а в руби только жалкое подобие Qt'шного биндинга, что меня периодически огорчает (наоборот преимущество у питона). А так… Не знаю…
0
Есть еще одна книжка по третьим рельсам в публичном доступе. Rails 3 in a Nutshell — rails-nutshell.labs.oreilly.com/
+4
Рельсовики, а в как проходит эволюция фреймворка — что принципиально за 5 лет изменилось?
0
на сегодняшний день рельсы самый передовой фреймворк, он похоже обогнал даже свое время. Однако востребованность на сегодняшний день невысокая. Складывается ощущение, что для создания сайта есть только php. По крайней мере, если посмотреть списки заказываемых проектов, то это на 80% пхп. Заказчики зачастую просто не знают ничего больше.
+2
давай на чистоту) Профессиноалов на rails рынке много меньше чем новичков — хотя бы потому что рельс и его плагины познавать надо года 3.
Создать готовый продукт на пхп может новичок сразу, пусть с говнокодом, готовый продукт на рельсах — после 2х полных переписываний и бессоных ноччей.
рельсы не против пхп, рельсы против java и asp. У пхп раз и навсегда своя ниша.
Создать готовый продукт на пхп может новичок сразу, пусть с говнокодом, готовый продукт на рельсах — после 2х полных переписываний и бессоных ноччей.
рельсы не против пхп, рельсы против java и asp. У пхп раз и навсегда своя ниша.
+1
написать простое приложение проще, чем на любом пхп фреймворке. Пхп интерпретатор стоит на всех апаче серверах и поэтому создав файл с расширением .php и написав
+1
в файл с расширением php получаем минимально работающее пхп приложение. С руби другая история. Для того чтобы поставить фреймворк, нужен vps. А дальше, после выхода passenger 3, все просто, запускаем в приложении passenger start и все работает.
0
и написав в файл с расширением php такой код…
получаем минимально работающее приложение
получаем минимально работающее приложение
0
наверно правильно будет сказать что
1. унификация, захват руби рынка — поглощение merb. Если хочешь сделать серьезный сайт на руби никаких сомнений — rails
2. упрощение синтаксиса во всех отношениях. вместо config.gem -> gem, map.connect в match. bundle. rack совместимость
Минус- огромное раздутие. the most over-hyped framework. Ever(http://ihaterubyonrails.com/)
Т.е. когда берешь рельсы на проект думаешь все безоблачно и прикольно, надо просто писать красивый код. Но рано или поздно сам запутываешся в rails magic :)
1. унификация, захват руби рынка — поглощение merb. Если хочешь сделать серьезный сайт на руби никаких сомнений — rails
2. упрощение синтаксиса во всех отношениях. вместо config.gem -> gem, map.connect в match. bundle. rack совместимость
Минус- огромное раздутие. the most over-hyped framework. Ever(http://ihaterubyonrails.com/)
Т.е. когда берешь рельсы на проект думаешь все безоблачно и прикольно, надо просто писать красивый код. Но рано или поздно сам запутываешся в rails magic :)
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Обзор книги «Beginning Rails 3»