lecture 1. Rails intro Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

Model-View-Controller (MVC)

A

Model-View-Controller (MVC, «Модель-Представление-Контроллер», «Модель-Вид-Контроллер») — схема разделения данных приложения и управляющей логики на три отдельных компонента: модель, представление и контроллер — таким образом, что модификация каждого компонента может осуществляться независимо.
Конечный пользователь обращается к view, который обращается к контроллеру. Контроллер достаёт необходимую модель согласно бизнес-логике и возвращает view, с которым пользователь работал.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Модель (Model)

A

Модель (Model) предоставляет данные и реагирует на команды контроллера, изменяя своё состояние

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Представление (View)

A

Представление (View) отвечает за отображение данных модели пользователю, реагируя на изменения модели.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Контроллер (Controller)

A

Контроллер (Controller) интерпретирует действия пользователя, оповещая модель о необходимости изменений.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Парадигмы Rails

A

CoC (Convention over Configuration)
DRY
ActiveRecord

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

CoC (Convention over Configuration)

A

Любые действия выполняются без дополнительной конфигурации. Если файл правильно назван и добавлен в нужное место, то он автоматически подтянется в проект.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

ActiveRecord

A

Парадигма, позволяющая легко мапить данные объектов в коде в базу данных

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

как настроить новое rails приложение?

A

установить rails на систему
$ rails new <название_проекта>
-T приложение без тестов (unit test по умолчанию)
-d <название_бд> настройка базы данных (sql lite по умолчанию)</название_бд></название_проекта>

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

что хранится в app?

A

большинство кода

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

что хранится в bin?

A

скрипты для настройки приложения

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

что хранится в config?

A

вся конфигурация

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

что хранится в db?

A

сиды, миграции и шемы базы данных

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

что хранится в lib?

A

кастомные решения и код, который напрямую не относится к бизнес-логике

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

что хранится в log?

A

логи рельсы

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

что хранится в public?

A

данные, которые будут сёрвиться и будут доступны в браузере

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

что хранится в storage?

A

файлы изображений и тд

17
Q

что хранится в tmp?

A

кеш, необходимый для работы, пиды (id процесса рельсы при запуске сервера) и тд

18
Q

как запустить рельсу?

A

засетапить бд (добавить
username: postgres
password: postgres
) в database.yml
$ rails db:create
$ rails s

19
Q

как создать модель и views с помощью rake?

A

$ rails g (generate) scaffold <название_модели> <параметры></параметры></название_модели>

20
Q

что делает миграция?

A

добавляет изменения в бд

21
Q

как сделать поле обязательным?

A

null: false

22
Q

как применить миграцию к базе данных?

A

$ rails db:migrate

23
Q

как создаются поля таблицы created_at, updated_at?

A

они создаются по дефолту с помощью метода t.timestamps

24
Q

что делает routes?

A

отображает действия с приложением через браузер
resources :cars означает наличие пути …/cars

25
Q

для чего нужен seeds.rb?

A

для того, чтобы прописать в нём стандартный набор моделей, которые будут использоваться в приложении. Тот, кто будет устанавливать приложение, прогонит этот файл для создания записей из него
запустить файл:
$ rails db:seed

26
Q

что хранится в контроллере?

A

стандартные методы с адресами в браузере

27
Q

что делает routes?

A

распознаёт ссылки для активации действий контроллера и создаёт url страницы для доступа из веба или path для перемещения локально

28
Q

что такое turbo_stream запрос?

A

рендер страницы без перезагрузки в браузере