Дейв Томас руководит компанией Pragmatic Programmers вместе с Энди Хантом. Он и Хант являются соавтором Ruby Pragmatic Programmer and Programming (AKA ‘The Pickaxe Book’). Майк Кларк — соавтор Agile Web Development с Rails, автор Pragmatic Project Automation, а также преподаватель Pragmatic Studio: Ruby on Rails.
Этот урок был в одной из самых больших комнат и был (как и ожидалось) очень полным. В основном это было просто, пошаговое введение в Rails — естественно, включая стандартную демонстрацию Rails по быстрой сборке базового приложения. Помимо базового знакомства со структурой приложения Rails (то есть, куда и куда идут файлы) и как создать приложение Rails, они также вошли в несколько других областей разработки Rails, которые мне показались интересными:
Миграции
Миграции предоставляют процедурный способ (в коде Ruby, естественно), чтобы создавать и изменять схему базы данных. Это полезно, если вы хотите независимый от базы данных способ поддерживать вашу схему. Они также помогают синхронизировать несколько разработчиков со структурными изменениями в вашей базе данных. Миграции также обратимы, поэтому вы можете отменить изменения, если они вам не нравятся.
Методы поиска модели
Они продемонстрировали, как объединить разные аргументы для find
. Видеть несколько разных способов сделать это полезно для кого-то вроде меня, который склонен использовать find_by_sql
в качестве find_by_sql
.
Много ко многим ассоциациям
Rails известен как очень хороший управляющий простыми моделями данных, включая базовые отношения один-к-одному и один-ко-многим. Теперь вы можете немного лучше справляться с более сложными настройками. Первоначальный способ работы со связями «многие ко многим» — это простая таблица соединений, которая нигде не отображается в вашей модели. Более новый способ заключается в том, что называется «сквозной ассоциацией», то есть объектом, который вы фактически помещаете в свою модель, где вы также можете повесить метаданные об ассоциации (например, в Ордере много элементов, а в каждой ассоциации элементов есть UnitPrice и Количество).
Генерация XML
Преобразовать ваш набор результатов в XML очень просто, предоставив вашему шаблону расширение «rxml», в котором вместо обычного сочетания разметки и тегов RHTML используется шаблон программного компоновщика .
Просто ОТДЫХ
Simply RESTful — это плагин Rails для маршрутизации, который отображает «глаголы» HTTP для связи в стиле REST на пути URL для общих действий CRUD в Rails (например, POST = ‘create’, PUT = ‘update’, DELETE = ‘destroy’ , и т.д.).