Ror - The Beginning

929 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
929
On SlideShare
0
From Embeds
0
Number of Embeds
355
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ror - The Beginning

  1. 1. Где искать информацию? ●  Google ●  http://ruby.railstutorial.org ●  http://guides.rubyonrails.org ●  http://apidock.com ●  http://api.rubyonrails.org ●  подергать соседа ;)   
  2. 2. RoR - Начало ● Введение в принципы MVC ● Проектирование (Модели) ● Конфигурирование (БД) ● Создание первой модели  ● Миграции ● Контроллер ● Отображение ● Связи между моделями   
  3. 3. MVC ● Представление (V) и  поведение (C) зависят  от модели (M).  ● Модель не зависит ни  от представления, ни  от поведения.   
  4. 4. Проектирование (Модели) ● Определение таблиц, которые  должна содержать база  данных. ● Определение необходимых в  таблице полей. ● Задание первичного ключа  для каждой таблицы. ● Определение связей между  таблицами. ● Обновление структуры базы  данных. ● Добавление данных и  создание других объектов     базы данных.
  5. 5. Конфигурирование БД ● Sqlite (http://www.sqlite.org) ● MySQL (http://www.mysql.com) ● Postgre (http://www.postgresql.org) ● MongoDB (http://www.mongodb.org) ● др.   
  6. 6. config/database.yml Sqlite ●   adapter: sqlite3 ●   database: db/database_name.sqlite3 Mysql ●   adapter: mysql ●   encoding: utf8 ●   database: database_name ●   username: root   ●   password: root   
  7. 7. ORM → ActiveRecord   
  8. 8. Создание первой модели Генераторы ● rails generate model ● rails generate migration ● rails generate scaffold Rake таски ● rake db:migrate ● rake db:rollback ● rake db:migrate VERSION=version ● rake db:seed   
  9. 9. Миграции Миграции  –  это  классы  наследованные  от  ActiveRecord::Migration.  Миграции  нужны  для  изменения структуры таблиц БД.   
  10. 10. Работа с таблицами ● Операции с таблицами create_table, drop_table, change_table ● Операции с колонками: add_column, change_column,  change_column_default,  rename_column,  remove_column,  add_index,   remove_index ● Типы полей: :primary_key, :string, :text, :integer, :float, :decimal,  :datetime, :timestamp, :time, :date, :binary, :boolean   
  11. 11. Rake таски ● rake db:migrate ● rake db:migrate:rollback ● rake db:migrate:redo ● rake db:migrate:rollback STEP=3 ● rake db:migrate:redo STEP=3 ● rake db:migrate:up VERSION=xxxxxxxxxxxxx ● rake db:migrate:down VERSION=xxxxxxxxxxxx   
  12. 12. Создание seedsФайл db/seeds.rb10.times do |i| Product.create( :name => red ball #{i},      :price => i ** 2)endНакатываем с использованием таска rake db:seed   
  13. 13. Основы работы с моделями ● where ● last ● select ● first ● group ● find ● order ● exists? ● limit ● count ● offset ● average ● joins ● minimum ● includes ● maximum ● lock ● sum ● readonly ● from ● having   
  14. 14. Связи между моделями ● belongs_to ● has_one ● has_many ● has_many :through ● has_one :through ● has_and_belongs_to_many   
  15. 15. Belongs_to   
  16. 16. Has_one   
  17. 17. Has_many   
  18. 18. Has_many :through   
  19. 19. Has_one :through   
  20. 20. Has_and_belongs_to_many   
  21. 21. Polymorphic association   

×