Как я могу «вставить» небольшое приложение ruby ​​в Ruby on Rails, чтобы создать веб-страницу? - PullRequest
1 голос
/ 01 апреля 2009

У меня есть небольшое приложение ruby, которое я сделал на своей локальной машине. Он использует текстовый файл, вставленный в базу данных. Это простое приложение, которое берет слово, обрабатывает его в текстовом файле, а затем выводит результаты, используя puts.

Я хотел бы встроить его в инфраструктуру RoR, размещенную на моем персональном компьютере. Я пробежал несколько уроков и руководств в нескольких моих книгах и онлайн-материалах, но все они связаны с базами данных.

Я прочитал примечания в config / environment.rb и нашел в строке 19 инструкции, чтобы раскомментировать строку, удаляющую ActiveRecord.

В настоящее время я ищу соответствующие каталоги для размещения самого текстового файла и код из приложения ruby, которое читает этот текстовый файл. Спасибо.

Ответы [ 4 ]

2 голосов
/ 01 апреля 2009

Вы, вероятно, хотите сделать что-то вроде следующего:

  • Иметь контроллер, который принимает слово в качестве параметра.
  • Превратите ваше приложение в функцию, которая принимает слово в качестве параметра и возвращает результаты (вместо выполнения put)
  • Вызовите функцию из вашего контроллера и отобразите результаты (например, что-то вроде:

    render: text => my_func (word)

2 голосов
/ 01 апреля 2009

Звучит так, как будто лучше подходит для чего-то более легкого, например Sinatra .

Если бы вы были связаны и решили использовать Rails, вы могли бы создать контроллер с действием, которое просто запускает код из вашей программы, но это кажется излишним. Вы бы не использовали 99,9% возможностей фреймворка, так почему же он вообще есть?

1 голос
/ 01 апреля 2009

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

Или, как кто-то из упомянутых, взгляните на Синатру.

Вы можете просто использовать рельсы, не беспокоясь об ActiveRecord. Я бы рекомендовал превратить ваше маленькое приложение в класс и потребовать файл в контроллере, который вы хотите использовать (или в environment.rb). Поместите файл в lib, и если данные временные, «tmp» - это нормально, или просто поместите его в «lib» со сценарием, который вы написали, даже «db» - отличное место для этого. Чтобы создать представление, просто запустите ваш код, поместите возвращаемый результат в переменную класса и создайте представление для него.

0 голосов
/ 01 апреля 2009

Модель не должна наследоваться от ActiveRecord :: Base. Или что-нибудь еще. Пока это следует соглашению об именах для моделей, Rails подберет его без проблем.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...