繁体   English   中英

我如何将一个小的 ruby 应用程序“插入”到 Rails 上的 Ruby 以制作 web 页面?

[英]How can i 'insert' a small ruby app into Ruby on Rails to make a web page?

我有一个在本地机器上创建的小型 ruby 应用程序。 它使用插入数据库的文本文件。 这是一个简单的应用程序,它接收一个单词,根据文本文件对其进行处理,然后使用puts输出结果。

我想将它放入我个人机器上托管的 RoR 框架中。 我在一些书籍和在线资料中浏览了一些课程和教程,但它们都涉及数据库。

我通读了config/environment.rb中的注释,并在第 19 行找到了取消注释删除 ActiveRecord 的行的说明。

我目前正在寻找合适的目录来放置文本文件本身,以及来自读取此文本文件的 ruby 应用程序的代码。 谢谢你。

这听起来更适合像Sinatra这样更轻量级的东西。

如果您已被约束并决心使用 Rails,您可以制作一个 controller,其操作只是从您的程序中运行代码,但这似乎有点矫枉过正。 你不会使用框架 99.9% 的功能,那为什么还存在呢?

您可能想要执行以下操作:

  • 有一个以单词为参数的 controller。
  • 将您的应用程序变成一个 function,它将单词作为参数并返回结果(而不是执行 puts)
  • 从 controller 调用 function 并渲染结果(例如:

    渲染:文本 => my_func(word)

如果你只是想给它一个小界面,你可以看看 Shoes,它是一个易于使用的多平台 gui 框架。

或者就像有人提到的那样,看看 Sinatra。

您可以简单地使用导轨,而不必担心 ActiveRecord。 我建议将您的小应用程序放入 class 并要求您要使用的 controller 中的文件(或 environment.rb 中)。 将文件放在 lib 中,如果数据是临时的,“tmp”就可以了,或者只是将它与您编写的脚本一起放在“lib”中,甚至“db”也是一个很好的位置。 要创建视图,只需运行您的代码并将返回值放入 class 变量并为其创建视图。

model 不需要从 ActiveRecord::Base 继承。 或者别的什么。 只要它遵循模型的命名约定,Rails 就会毫无问题地使用它。

话虽如此,如果您真的在寻找一个模型、一个控制器、一个动作、无数据库的应用程序,那么 Sinatra 可能是一个非常好的轻量级起点......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM