没有任何框架的Ruby网页从头开始

我正试图从头开始学习ruby for web。 我知道PHP,我是ruby的新手。 我不想在开始时使用任何框架。 尝试创建简单的2-3页练习。 我搜索了很多,但没有任何例子来创建ruby和机架的网页,并在任何浏览器中运行它。

如果您有任何url或在线资料可以开始,请分享。

但是,在Ruby中编写一个简单的CGI很简单,解释了如何超出Stack Overflow的范围。

首先,阅读维基百科的通用网关接口文章,这样您就可以了解CGI必须返回的内容。 挑选Perl示例; 你应该能够很容易地弄清楚发生了什么。 阅读文章并比较它所代表的内容与代码示例的作用。

接下来,看看Ruby的CGI模块,因为它将帮助您解析传入的表单信息,并编码/解码URL和HTML。 查看环境变量表,您将看到维基百科文章中提到的相同内容。 接下来,请注意params()方法,即访问表单变量的方法。 通过阅读“编写输出”和“生成HTML”部分,然后在示例中进行说明。 你应该在路上。

一旦你完成了,你应该看看Sinatragem。 它是一个非常好用,易于使用的框架,非常适合一般的Web使用,并且在了解了CGI如何工作之后,您将在一个很好的地方欣赏Sinatra为您做的事情。 此外,我强烈建议将HAML与Sinatra一起使用。 它是生成网页的捷径语言,类似于ERB,但不那么冗长。

您会发现PHP已经使您无需使用CGI编写“普通”Web应用程序所需的大量知识。 如果您已经知道这些内容,那就没关系,但是如果您从未完成过较低级别的代码,或者尝试使用不同的语言,那就太糟糕了,因为知道CGI层提供了解整个HTTPD堆栈所需的大量知识。 一旦你知道CGI层,像Sinatra,Rails,Django,Mojolicious和其他所有框架的东西突然变得更有意义,你就会知道何时利用它们或者自己动手。 并且,PHP在HTTP服务器中的位置也将更加清晰,允许您更好地选择适合当前工作的工具。

查看Ben Scofield在RubyConf 2008上的演讲 – 构建我自己的Web框架应该让您了解在不使用任何框架的情况下从头开始使用ruby构建Web应用程序所涉及的内容。

上一个问题的答案也应该有所帮助: 在不使用任何框架的情况下在Ruby中完成Web应用程序 – 有多难? 陷阱?