草庐IT

my_sinatra_app

全部标签

ruby-on-rails - 为什么 "rails s"在 app 目录中不起作用?

我在我的应用程序文件夹中,但命令railss不起作用。我在StackOverflow上阅读了很多帖子,其中大多数似乎来自不在其应用程序目录中的用户。此外,我还构建了一些其他应用程序。我检查了那些,Rails服务器适用于所有这些应用程序。这是唯一一个我无法启动它的地方。whichrails的输出:/Users/jmcrist/.rvm/gems/ruby-2.0.0-p247/bin/railsrailss的输出:MacBook-Pro:first_appjmcrist$railssUsage:railsnewAPP_PATH[options]Options:-r,[--ruby=PAT

ruby - Sinatra 在发布时清除 session

enable:sessionsset:session_secret,'secret'post'/login'dosession[:loggedInUser]=jsondata['username'].to_sputssession[:loggedInUser]+"isthesession"end此时一切都很好。当我这样阅读session时:get'/debug'dosession.inspectend它都在那里。但问题来了。当我稍后去另一个帖子请求时:post'/foo'do#donothingendsession被清除。为什么?这是错误吗?编辑我已经缩小了问题的范围:我通过nginx

ruby - Sinatra 即时配置环境

我已经成功地编写了一个小的Sinatra应用程序,并且已经成功地将它部署在了heroku上。但是我想在我的本地计算机上以开发模式运行该应用程序,并且我希望在将它推送到远程存储库后在heroku上以生产模式运行它。目前我可以实现这些选项中的任何一个。当我将config.ru更改为以下值时:require'rubygems'require'sinatra'require'sinatra/reloader'require"./calc.rb"enable:loggingset:environment,:developmentset:port,4567我可以通过rubyconfig.ru在本地

ruby - 在 sinatra 中获取绝对(基本)url

现在,我做一个get'/'doset:base_url,"#{request.env['rack.url_scheme']}://#{request.env['HTTP_HOST']}"#...haml:indexend能够在HAMLindex.haml中使用options.base_url。但我确信有一种更好的、更干的方法可以做到这一点。然而我看不见,也找不到。(我是Sinatra的新手:))不知何故,在get之外,我没有可用的request.env,或者看起来是这样。所以把它放在一个包含中是行不通的。你如何获得你的基本网址? 最佳答案

ruby-on-rails - Rails、Padrino 和 Sinatra 构建预付费移动服务的适用性

我正在开发移动/VOIP领域的应用程序。这对我来说真的是一个灰色地带。以下是有关该应用程序的一些详细信息:这基本上就像一个自动充值/预付费移动服务与我之前编写的ERP应用程序相比,将具有中等复杂度的逻辑。响应中的View部分将是纯文本,将作为SMS/USSD拉取发送给用户,而语音XML(VXML)将作为IVR响应发送给用户。路由逻辑非常简单,因为对于每种回复类型,只有两到三个URL很重要。约束条件:我们在Perl中构建了核心系统(它是一个遗留系统,为许多其他VOIP/移动相关服务提供服务),以及一个用于跟踪损益的会计系统,但它变得非常复杂。所以我们决定单独做这个应用,只用SMS/USS

ruby - 如何在 sinatra View 中呈现局部(haml in haml)?

我有一个简单的sinatra应用程序,它使用haml和sass作为View。其中一个View(位于View文件夹中)是我的导航菜单的一部分。我正在尝试从index.haml渲染它,但出现以下错误:参数数量错误(1对2)我正在尝试使用index.haml中的以下行来呈现它.navigation=render:partial=>"nav" 最佳答案 你可以只使用Sinatra的haml函数:=haml:nav 关于ruby-如何在sinatraView中呈现局部(hamlinhaml)?,我

ruby - 用 Sinatra 设计

有没有人安装过Devise与Sinatra的gem?Devise基于Warden,因此它应该可以在Sinatra上运行,我找不到任何关于如何实现它的相关信息。 最佳答案 Devise实际上只是一个以Rails为中心的包装器,为warden提供了很好的帮助。,这是底层的Rack身份验证框架。因此,如果您将Sinatra与Rails结合使用,则可以在Rails应用中使用Devise,并直接在Sinatra应用中使用warden,它们将看到相同的用户session数据。所以不,你不能在你的Sinatra应用程序中直接使用Devise,但是

ruby - 从 Sinatra 发送 DELETE 请求

我正在尝试开发一个RESTfulSinatra应用程序。现在,我知道如何用类似的方式响应删除请求delete'/user/:id'do|id|#dosomethinginthemodelend我感兴趣的是如何执行该方法。我不能有执行DELETE而不是GET的链接,可以吗?到目前为止,我找到的唯一解决方案是通过jQuery发送DELETE请求:HowtosendaPUT/DELETErequestinjQuery?我尝试在github上查看不同的RESTfulSinatra项目,但我的Ruby知识可能仅限于了解他们是如何做的。 最佳答案

ruby - Sinatra 和 Ramaze 之间的主要区别是什么?

我正在寻找一个轻量级的RubyWeb框架并且遇到了Sinatra和Ramaze.两者都显得非常轻盈、简洁和简单。但我对两者的了解都不够多,无法说出主要区别是什么。也许对其中一项或两项都有经验的人可以发表评论? 最佳答案 其他轻量级Ruby框架我喜欢_why'sCamping(现在维护bythecommunity)必须是它们中最轻的(有关最新信息[>=v1.9],请参阅Campinglinks上的Campingwiki,EleanorMcHughe的“GoingofftheRails”或[v1.5]JeremyMcAnally的Goi

ruby - 如何在 Heroku 上托管的 Ruby/Sinatra 应用程序中设置 HTTP header ?

我有一个基于Ruby和Sinatra的工作应用程序部署在Heroku上。我想利用Heroku上可用的HTTP缓存,它使用Varnish。我不确定设置header的最佳方式是什么,以及正确的语法。对最佳方法和语法有什么想法吗?beforedoheaders"Content-Type"=>"text/html;charset=utf8"endget'/'doheaders['Cache-Control']='public,max-age=600'#SOMESTUFFHEREhaml:home,{:layout=>:layout_minfooter}end 最佳答