Разработка Rails 3.0 для развертывания на SQL-сервере в другой операционной системе

#ruby-on-rails #sql-server #windows #macos

#ruby-on-rails #sql-сервер #Windows #macos

Вопрос:

Я разрабатываю решение Rails 3 для своего клиента, но у меня нет большого опыта развертывания в Rails 3. В основном я работаю на Mac OSX и у меня будет своя собственная база данных с данными, которые я буду получать из ERP-системы от моего клиента. Его среда состоит из Windows и SQL Server, поэтому при развертывании она должна быть совместима с SQL Server и Windows (возможно, он мог бы использовать Linux).

Большая часть данных будет поступать из таблиц / представлений в sql server, но 4-10 новых таблиц будут заполнены моим решением Rails.

Какой наилучший рабочий процесс при разработке на MacOSX для развертывания в Windows и SQL Server в Windows?

Я буду использовать Rails 3, haml, Google-Maps-For-Rails, SASS и Blueprint.

Ответ №1:

очевидно, что вы не можете установить SQLServer на Mac, поэтому у вас есть два варианта

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

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

вот пример

 db_name:
adapter: sqlserver
database: db_name
host: remote_ip
username: user
password: password
  

Комментарии:

1. Маловероятно, что вы сможете напрямую подключиться к SQL Server клиента с помощью метода, упомянутого выше. Они, вероятно, не позволят своей базе данных для их ERP-решения увидеть свет во внешнем мире … когда -либо. Таким образом, вместо этого вы можете настроить VPN-доступ, и затем вы сможете подключиться к нему после того, как вы подключитесь к их сети. VPN.

Ответ №2:

Супер простой ответ? Используйте JRuby!! Для sqlserver просто используйте jdbc и activerecord-jdbc-adapter.

 gem install activerecord-jdbc-adapter
  

Затем в database.yml

 development:
  adapter: jdbc
  username: username
  password: p4ssw0rd
  schema: default_schema
  driver: net.sourceforge.jtds.jdbc.Driver
  url: jdbc:jtds:sqlserver://sqlserver_dns/database_name:1433
  

И вот, пожалуйста! Начните кодировать сейчас 🙂

Если вы хотите развернуть окончательную версию на Windows / Linux / что угодно, просто используйте Tomcat и Warbler.

 gem install warbler
// in the root of your project
warble war
  

Скопируйте war и готово!

Комментарии:

1. Спасибо за ваш ответ. У меня нет опыта работы с JRuby, и я боюсь, что столкнусь со стеной при разработке и особенно при развертывании. Как вы думаете, это что-то вроде «plug-n-play»?

2. Абсолютно! Попробуйте, потому что вам не обязательно знать Java, чтобы использовать его. 1. rvm установите jruby 2. rvm jruby 3. gem установите rails 4. rails новый myNewAwesomeProject