Ruby on rails 在Ruby/Smashing web应用中单击按钮调用bash脚本

Ruby on rails 在Ruby/Smashing web应用中单击按钮调用bash脚本,ruby-on-rails,ruby,bash,sinatra,dashing,Ruby On Rails,Ruby,Bash,Sinatra,Dashing,我被要求参与一个使用Smashing(一个基于Sinatra的框架)构建的简单web应用程序。我对rails有一点经验,但我不熟悉这个框架(或Sinatra),也不知道为什么选择它。我理解构建仪表板很有用,并且相信之所以选择它是因为这种前端满足客户的需求。到目前为止,我甚至很难理解控制器在哪里 我一整天都没能做到的事情至少听起来很简单:当点击网页上的按钮时,在服务器端运行bash脚本,并显示一条消息,如“作业完成”(如果出现问题,则显示“错误”) 所以我有一个典型的按钮,比如: <butt

我被要求参与一个使用Smashing(一个基于Sinatra的框架)构建的简单web应用程序。我对rails有一点经验,但我不熟悉这个框架(或Sinatra),也不知道为什么选择它。我理解构建仪表板很有用,并且相信之所以选择它是因为这种前端满足客户的需求。到目前为止,我甚至很难理解控制器在哪里

我一整天都没能做到的事情至少听起来很简单:当点击网页上的按钮时,在服务器端运行bash脚本,并显示一条消息,如“作业完成”(如果出现问题,则显示“错误”)

所以我有一个典型的按钮,比如:

<button id='script_btn' type='button' class='btn btn-danger'>run script</button>
运行脚本
在我的项目文件夹中的某个地方有一个文件script.sh

如何使按钮单击execute“script.sh”并返回脚本成功运行(或发生错误)的消息

我一直在搜索,但我似乎找到了关于这方面的信息,主要是关于PHP、Node.js,也许还有一些关于rails的信息,但在我的例子中没有找到。任何帮助都将不胜感激


(没有标记破坏,所以我将使用Dash,它似乎是它的前身)

让我们看看这是否有帮助,我使用Slim作为模板引擎。请让我们知道这是否有效

(bash_sinatra.rb)

仅为示例起见,这里有一行bash脚本

#!/bin/bash

echo "Script was successfully executed."

在终端上运行sinatra应用程序
ruby bash\u sinatra.rb
,sinatra服务器将启动

这对我来说是一个新知识,谢谢,很抱歉,当你把slim:run\u bash,是运行_bash的命令还是您编写的调用类方法@@run_bash@script_result=
`system/script.sh中的某处是运行bash脚本的命令,只需将文件路径放在后引号中
slim:run_bash
用于在页面模板中呈现。感谢回复。请原谅这个愚蠢的问题,但是所有这些代码都在一个文件中吗?顶部看起来像一个控制器。。我对这个惊人的框架的问题是,到目前为止,我甚至不知道控制器在哪里/是的,上面的一个作为控制器,所有代码都是一页,您可以通过在应用程序根目录中创建
视图
文件夹来分隔视图。您也可以使用
erb
而不是slim。
#!/bin/bash

echo "Script was successfully executed."