ORM, базы данных, CRUD

Главная / ORM, базы данных, CRUD

Этот пост представляет собой небольшую заметку о компонентах, которыми нужно владеть Ruby on Rails разработчику.

В прошлых постах я довольно подробно рассмотрел основы Ruby и Rails, но возможно у меня не хватит времени на разбор чуть более продвинутых компонентов. Которые, впрочем, вы можете изучить и самостоятельно, зная основы.

Что такое ORM

ORM сопоставляет объект и реляционную базу данных.

Object-relational mapping — объектно-реляционное сопоставление.

Это сопоставление убирает разрыв между реляционными базами данных, которые спроектированы на основе математической теории множеств, и объектно-ориентированными языками программирования, которые имеют дело с объектами и их поведением.

Также ORM упрощает написание кода для доступа к базе данных.

В Rails, Модель обычно использует какой-то ORM-фреймворк.

Фреймворком по умолчанию является Active Record.

Базы данных

SQLite довольно легкая и простая база данных, но для большинства проектов вам могут понадобиться такие базы данных как PostgreSQL или MongoDB.

Postgres является объектно-реляционной базой данных, она хорошо подходит для хранения разнообразной информации.

MongoDB является NoSQL базой данных, она использует JSON-подобные документы. Она также подходит для хранения больших объемов данных или медиафайлов.

Иногда вам могут встречаться прочие БД, например MySQL.

CRUD

CRUD (create, read, update, delete) — четыре базовые функции, используемые при работе с базами данных и прочими хранилищами информации:

  • Создание
  • Чтение
  • Редактирование
  • Удаление

Пример:

Операция SQL-оператор HTTP-операция
Создание (create) INSERT POST
Чтение (read) SELECT GET
Редактирование (update) UPDATE PUT или PATCH
Удаление (delete) DELETE DELETE

Также CRUD может означать пользовательский интерфейс с такими функциями.

2 комментария к “ORM, базы данных, CRUD”

  1. Кроме того, я бы порекомендовал обратить внимание на аутентификацию и авторизацию (в том числе советую посмотреть Devise и OAuth), обратить внимание на безопасность (к примеру, избежание SQL-инъекций).

  2. Ах да, еще добавлю, что в качестве хостинга для MongoDB хорошо подходит mLab.

    Они чем-то похожи на Heroku, но они предоставляют базу данных как сервис.

    На Heroku можно размещать PostgreSQL, но она не всегда подходит.

    К примеру, если вам нужно размещать изображения пользователей, для этого отлично подойдет отдельная база данных MongoDB.
    Вообще, иногда можно хранить изображения прямо в файловой системе, но Heroku этого не позволяет.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *