Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МУ_по созданию ИС с помощью RoR_2018.docx
Скачиваний:
9
Добавлен:
17.06.2023
Размер:
12.5 Mб
Скачать

2 Подготовка к выполнению проектирования ис

Для разработки приложений на RubyonRailsв данном методическом указании можно выделить список необходимого ПО:

1. Интерпретатор Ruby;

2.Фреймворк Ruby on Rails;

3.База данных PostgreSQL;

4. Клиент для работы с БД pgAdmin3;

5.Текстовый редактор SublimeText 2 или 3 версия.

Первые три пункта мы установили в предыдущем разделе, когда ставили пакет RubyStack. Установку остальных приложений Вы должны были установить отдельно.

Приступим непосредственно к самой разработке ИС.

Примечание:

Напомним, что ИС будет вести учет сотрудников организации, занимаемых ими должностей, а также их хобби (смотри первую часть дисциплины «Проектирование информационных систем»). В первой части дисциплины «Проектирование информационных систем» мы разрабатывали аналогичную ИС, но при этом использовали файл-серверную архитектуру. В данном случае мы создадим такую же ИС, но при этом будем использовать клиент-серверную архитектуру, и кроме этого применять Интернет-технологии разработки.

Примерная схема данных ИС «Сотрудники» представлена на рисунке 2.2.

Рисунок 2.2. – Схема данных ИС «Сотрудники»

Описание действий будет производиться по шагам для лучшего восприятия информации.

  1. Создайте пустую папку на диске для разработки приложений Ruby on Rails, например “C:\RoR\”.

  2. Запуск приложений Ruby on Rails и управление над ними производится в стандартной консоли “cmd” компании Microsoft, однако ее запуск стоит производить из файла “use_ruby.bat” расположенного в директории “C:\RubyStack\” (или другой путь, который вы выбрали при установке пакета).Этот скрипт запускает интерпретатор ruby и наш фреймворк в папке, прописанной по умолчанию в файле.

Примечание

Для надежной работы со средой Ruby on Rails следует вышеописанный bat-файл (use_ruby.bat ) запускать с правами администратора

  1. Изменим путь стартового запуска на нашу созданную папку, для этого нажмите ПКМ по файлу use_rubyи выберите изменить. Строку

cd “C:\RubyStack(или другой путь)\”

изменим на

cd“C:\RoR\”

или на другой путь, который вы указывали на первом шаге. Сохраните и закройте файл.

Если вы делаете на другом диске:

D:

cd “D:\RoR”

Примечание

Следите за раскладкой клавиатуры при создании папок и написании в командной строки! Не используйте в наименовании папок русские буквы.

  1. Создадим свое первое приложение. Запустите файл use_ruby ( с правами администратора) и введите следующую строку:

rails new Sotrudniki --database=postgresql

Нажмите Enter после, чего Rails выполнит свою команду – создание нового приложение. Как вы могли заметить названием приложения служит “Sotrudniki”, а “--database=postgresql” это параметр, указывающий БД с которой будет работать приложение. После выполнения команды Rails создаст папку “C:\RoR\Sotrudniki\” со структурой вашего приложения (как бы исходным первоначальным «шаблоном»), к которой мы вернемся позже.

После создания директории с проектом для дальнейшей работы необходимо перейти в папку проекта для этого в консоли пишем команду:

сd Sotrudniki

Примечание:

Если при выполнении команды на 4 шаге у вас возникли проблемы, это может связно со следующими ошибками:

1) Неправильная установка пакета “RubyStack”;

2) Неверно задан путь в файле use_ruby.bat;

3) Запуск консоли производился не с помощью файла use_ruby.bat.

  1. Добавим папку “Sotrudniki” с нашим приложением в редактор SublimeText. Сделать это можно двумя способами:

- в редакторе SublimeTextвыбрать “File/Openfolder” и в открывшемся окне выбрать нужную папку;

- перетащить папку “Sotrudniki” в окно программы SublimeText.

После чего все содержимое папки будет доступно для редактирование в программе (Рисунок 2.1).

Рисунок 2.1 – Окно программы SublimeText

  1. Посмотрите на структуру вашего приложения. Дадим общее представление содержимого:

Таблица 2.1 – Содержимое шаблона приложения Rails

Файл/Папка

Назначение

app/

Содержит контроллеры, модели, вьюхи, хелперы, рассыльщики и ресурсы вашего приложения. Мы рассмотрим эту папку подробнее далее.

bin/

Содержит Rails скрипты которые стартуют ваше приложение, также директория может содержать другие скрипты которые вы используете для настройки, деплоя или запуска.

config/

Конфигурации маршрутов, базы данных вашего приложения, и т.д. Более подробно это раскрыто в Конфигурирование приложений на Rails

config.ru

Конфигурация Rack для серверов, основанных на Rack, используемых для запуска приложения.

db/

Содержит текущую схему вашей базы данных, а также миграции базы данных.

Gemfile

Эти файлы позволяют указать, какие зависимости от гемов нужны для вашего приложения на Rails. Эти файлы используются гемом Bundler. Подробнее о Bundler смотрите на сайте Bundler

Gemfile.lock

lib/

Внешние модули для вашего приложения.

log/

Файлы логов приложения.

public/

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

Rakefile

Этот файл содержит набор команд, которые могут быть запущены в командной строке. Определения команд производятся во всех компонентах Rails. Вместо изменения Rakefile, вы можете добавить свои собственные задачи, добавив файлы в директорию lib/tasks вашего приложения.

README.rdoc

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

test/

Юнит-тесты, фикстуры и прочий аппарат тестирования. Это раскрывается в руководстве Тестирование приложений на Rails

tmp/

Временные файлы (такие как файлы кэша и pid)

vendor/

Место для кода внешних разработчиков. В типичном приложении на Rails, включает внешние гемы.

Примечание:

Если вы внимательно рассматривали таблицу 1, то могли заметить такое определение, как гемы. В Railsгемы служат внешними библиотеками, которые можно подключать к проекту.

  1. После создания приложения для его запуска и настройки необходимо проверить, чтобы все гемы (библиотеки) соответствовали версиям, прописанным в файле Gemfile, и вообще были подгружены в проект. Для этого пропишем в консоли две команды:

bundle update (эта команда обновит и подгрузит необходимые гемы;)

bundle install (эта команда установит все необходимые гемы.)

Примечание:

Вариант №1

Иногда возникает необходимость обновить gem-файлы в проекте, но из-за настроек сети (отсутствие интернета) не всегда есть такая возможность. Одним из вариантов обновления gem-файлов является их перенос с уже обновленного проекта (на другом компьютере). Для этого необходимо на обновляемом ПК перейти по пути C:\Bitnami\ruby\lib\ruby\ (или по другому пути, в соответствии с вашей установкой) и скопировать (или заменить, если такая папка имеется) папку gems (будьте внимательны папок gems несколько на разных уровнях подкаталогов, поэтому замените именно, на том уровне, на котором необходимо):

Рисунок 2.2 – Необходимая папка gems

Далее переходим в консоль Ruby и находясь в нашем папке рабочего проекта выполняем последовательно две команды:

bundle show

После которой в папке с проектом появится файл Gemfile.Lock в котором будут указаны текущие версии gem – файлов среды Rybu on Rails.

Результаты выполнения данной команды показан на рисунке 2.4.

Рисунок 2.4 – Просмотр gem – файлов командой bundle show

bundle install

В результате выполнения этой команды произойдет установка последних версий gem – файлов в создаваемый проект. Результат выполнения данной команды показан на рисунке 2.5.

Рисунок 2.5 – Результат успешной инсталляции gem – файлов

Теперь при создании каждого нового проекта, необходимо будет выполнять описанную процедуру (кроме переноса папки gems).

Вариант №2

Если используемый компьютер находится в частной сети(например, защищенной Proxy) и не разрешает подключиться к серверу для обновления gem-файлов с сайта https://rubygems.org,то можно попробовать выполнить следующие действия:

  1. Следует воспользоваться другим каналом для подключения к интернету (Например,Wi-Fi модуль). Для этого необходимо установить драйвера для Wi-Fi модуля (например, DlinkDWA-131E_V5/01b03).

  2. Подключиться к Wi-Fi сети с помощью модуля.

  3. В браузере по умолчанию в параметрах соединения выбрать пункт «без прокси»

  4. В папке с разрабатываемом проектом (например «Sotrudniki»), в файле Gemfile и заменить в первой строке каждого из этих файлов https://rubygems.org на http://rubygems.org и сохранить изменения.

  5. В Ruby выполнить команду bundle update

  6. Дождаться завершения загрузки gem-файлов.