Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)
Click here to load reader
Transcript of Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)
![Page 1: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/1.jpg)
Стажировка-2014
Ruby on Rails setup
![Page 2: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/2.jpg)
Стажировка-2014
Установка и настройка
1. Обновление системы (sudo apt-get…)2. Установка RVM (Ruby version
manager)3. Установка ruby (2.1.2)4. Установка rails (4.1)
![Page 3: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/3.jpg)
Стажировка-2014
curl -sSL https://get.rvm.io | bash -s stable --rails --ruby
Одна команда:
![Page 4: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/4.jpg)
Стажировка-2014
Создаём проект
> rails new test_project
![Page 5: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/5.jpg)
Стажировка-2014
Настройка коннекта к БД
config/database.yml
![Page 6: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/6.jpg)
Стажировка-2014
Запуск сервера
> rails s
![Page 7: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/7.jpg)
Стажировка-2014
Роутинг
config/routes.rb
http://rusrails.ru/rails-routing
![Page 8: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/8.jpg)
Стажировка-2014
Генераторы
> rails g model Car name:string
model: string year: integer
> rake db:migrate
> rails g controller cars
![Page 9: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/9.jpg)
Стажировка-2014
Консоль
> rails c
![Page 10: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/10.jpg)
Стажировка-2014
ActiveRecord: работа сбазой данных
@car = Car.new(name: ‘ford’,
model: ‘gt’)
@car.save
http://rusrails.ru/active-record-basics
![Page 11: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/11.jpg)
Стажировка-2014
ActiveRecord: работа сбазой данных
Car.where(name: ‘kamaz’)
Car.find(199)
Car.trucks.from_russia.count
Car.exists?(model: ‘911’)
Car.delete_all
http://rusrails.ru/active-record-basics
![Page 12: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/12.jpg)
Стажировка-2014
ActiveRecord: работа сбазой данных
Car.pluck(:id, :name)
Car.joins(:owner, :reviews)
.where(color: ‘red’)
.where(owner: {name: ‘Foo’})
.delete_allhttp://rusrails.ru/active-record-basics
![Page 13: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/13.jpg)
Стажировка-2014
ActiveModel: валидации
class Car < ActiveRecord::Base
validates :name, presence: true
validates :year, presence: true,
numericality: true
end
http://rusrails.ru/active-record-basics#validatsii
![Page 14: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/14.jpg)
Стажировка-2014
Form Helpers
<%= form_tag cars_path do %>
Name:
<%= text_field_tag :name %>
Model
<%= text_field_tag :model %>
<%= submit_tag 'CREATE' %>
<% end %>
http://rusrails.ru/layouts-and-rendering-in-rails
http://rusrails.ru/rails-form-helpers
![Page 15: Стажировка-2014, занятие 8. Обзор Rails framework (Ruby)](https://reader037.fdocuments.in/reader037/viewer/2022100605/559cb8b51a28abe4558b464c/html5/thumbnails/15.jpg)
Стажировка-2014
Выбор тестового редактора:
• IDE от JetBrains RubyMine• SublimeText• Atom• VIM, emacs