我刚刚开始RoR开发两周,到目前为止它是非常棒的编程语言。这让我印象深刻,以至于我开始考虑将客户项目的编程语言从PHP改为RoR。但我想知道的是,在本地计算机上使用 RoR Web应用程序时,是否可以将其作为 Native App 。到原生应用一词,我的意思是..
欢迎提出其他建议。 (包括不使用RoR开发本地应用程序的原因)
答案 0 :(得分:5)
我个人认为想要将Rails应用程序部署为桌面应用程序并不是一件荒谬的事情,但这当然不是最简单的事情。下面列出了您将需要的内容:
任选:
Here's关于将rails应用程序部署为桌面应用程序的教程,但对于debian来说,这应该会让你朝着正确的方向前进。但是你最好的选择是在{* 3}}中使用红宝石快速申请。
答案 1 :(得分:3)
由于rails是用于Web开发的框架,因此无法避免启动rails服务器以在本地计算机上显示某些内容。您可以通过将服务器作为服务运行来隐藏服务器的启动这一事实,而不会让用户知道它,但这只是你可以得到的。
所以是的,可以将您的应用程序捆绑到“本机应用程序”中,但我担心它会非常脆弱,因为有太多的部分需要组合在一起:ruby本身,要使用的数据库,rails和所有其他宝石。很有可能你会有一个需要编译的宝石,然后你就麻烦了。
底线:它不值得,无论是托管您的应用程序还是选择更好的解决方案来开发仅在本地运行的东西。
答案 2 :(得分:2)
也许我错了,但你似乎错过了RoR不是编程语言的事实。 Ruby是一种编程语言,RoR是Web开发框架。无论如何,如果你想开发桌面应用程序,你可以使用Ruby和Bowline这样的框架(以保持MVC精神)。
答案 3 :(得分:2)
可能超出主题,但如果你想制作原生应用程序,或许可以制作原生应用程序?我的意思是,开发Web应用程序然后在本地托管它的目的是什么?
至少,您可以考虑使用免费主机,例如heroku。 http://your-project-name.heroku.com将授予您5mb数据库和1名工作人员。它是免费的,可以为您节省很多麻烦,并且可以让您更轻松地为您的客户部署更新的版本。
如果他们想要双击打开应用程序,只需让他们在桌面上放一个书签。
答案 4 :(得分:2)
如果需要Web应用程序,请构建Web应用程序。如果您要构建桌面应用程序,请尝试Monkeybars或Appcelerator。
答案 5 :(得分:1)
我的回答很晚,但无论如何我遇到了同样的问题,并使用gem ocra为windows构建一个exe。 也可以生成一个设置来在寄存器中安装程序。
仍然需要启动服务器,但用户只需单击exe程序;打开控制台并提供一些说明,例如'在服务器启动后,打开浏览器并转到localhost:3000;完成后按Ctrl + C退出。
可以将服务器作为服务启动,但我认为我的用户更愿意知道程序是否正在运行。
ocra设置起来并不容易,但最终效果很好。