ruby on rails
如果您是初学者,则应该知道Ruby on Rails是可帮助您构建Web应用程序的框架。
多年来,Ruby on Rails用于软件开发,这是因为它具有许多优点。 许多公司正在使用Rails,例如:
- 爱彼迎
- Fiverr
- 大本营
- 的GitHub
- 运球
- 沙发冲浪
但是,作为所有新事物,使用Ruby on Rails初学者可能很难。 但是不用担心! 在本文中,我们将研究如何启动第一个Rails应用程序并创建自己的页面。
创建一个Rails应用
创建第一个Rails应用程序很容易。 但是,您需要在计算机上安装Ruby和SQL Lite。 因此,请确保已完成 。
启动新应用程序的Rails命令是rails new your-app-name
。在您的情况下,您可以打开终端并输入rails new my-rails-app
。
使用此命令后,rails将立即创建一个名为“ my-rails-app”的新文件夹。 您可以使用代码编辑器将其打开(在这种情况下,我将使用VS Code)。
使用VS代码打开文件夹“ rails-app”后,您应该会看到以下内容:
启动Rails服务器
现在启动应用程序。 在VS代码中打开终端,然后键入rails server
。 此命令将在端口3000上启动Rails服务器。现在,您可以通过在Web浏览器中输入http:// localhost:3000 /来本地访问您的应用程序。
而已! 您开始了第一个Rails应用程序! 如果一切顺利,您应该有以下内容:
更改Rails应用程序的内容
启动并运行Rails应用程序非常棒。 但是, 我们需要更改默认应用程序以使其成为我们自己的 。 要更改应用程序的内容,您需要了解Rails在后台的工作方式。
Ruby On Rails的工作原理:了解MVC架构
Rails使用MVC体系结构工作:模型-视图-控制器。 但是,这对于Rails是不合适的。 许多其他框架(例如Django,AngularJS或ReactJs)也使用MVC概念。
详细解释MVC将花费另一篇文章。 只需知道MVC体系结构就是Rails如何将前端连接到后端。
他们每个人的不同角色是:
- 模型 :处理与数据库有关的所有事情
- 查看:处理用户在您的应用中查看内容的部分。
- 控制器:它处理用户的请求并返回结果(例如新的视图或登录帐户)。 在动态网站中,控制器还与数据库对话。
这是我们所说内容的直观解释:
Picutre来自:sitePoint
当用户发出请求(例如搜索)时,该请求将到达路由器。 路由器会将请求发送到控制器。 这就是控制器接管的地方。 它将处理数据库(如果需要)并在视图中打印结果(因此搜索结果)。 那就是您看到搜索结果的时间。
创建路线
让我们为我们的应用程序创建一条新路径。 现在,我们无法在Rails应用程序中进行任何操作。 假设我们要转到应用程序的/ blog路径。 如果我们输入http:// localhost:3000 / blog,我们将得到如下错误:
你看? 它告诉我们一些信息: http:// localhost:3000 / blog没有路径(或路由)。
换句话说,我们的应用程序中还没有“ / blog”。 这意味着我们必须创建它。 我们用路由器做到这一点!
路由器是应用程序和用户之间的链接。 当您键入localhost:3000 / blog时,它将进入路由器。
路由器检查您的应用程序中是否存在处理该请求的现有路由。 如果没有,它将返回一个错误(就像我们现在遇到的那样)。 因此,如果要解决此错误,则必须创建此“ / blog”路由。 我们开始做吧!
返回您的代码编辑器,然后打开routes.rb文件(在您的配置文件夹中)。
我们使用以下语法创建一条新路由(获取请求):“ get blog, to: 'blog#index
”
这是告诉Rails“ 嘿! 当有人想要访问localhost / blog时,知道它存在并将该请求映射到某个地方 。 而这里的“某处”是我们的博客控制器(再次查看MVC插图)。
如果我们再次尝试使用我们的应用程序(刷新页面),则会收到新错误。 这意味着它创建了路由(该路由存在)。 但是没有看到名称为“ blog”的控制器。
因此,让我们创建它!
创建博客控制器
在您的应用程序文件夹中,有一个“控制器”文件夹。 您需要浏览到该文件夹(从根文件夹)以创建新的控制器。 有两种创建新控制器的方法:
- 通过终端执行
- 通过手动创建
我们将使用终端创建新的控制器。 这也将帮助我们创建其他必要的文件(我们将在后面看到)。
因此,打开终端并键入命令rails generate controller blog
。 这将创建博客控制器以及与该控制器相关的所有文件 (暂时不用担心)。
现在看一下您的controllers文件夹。 您将看到rails生成了一个名为blog_controller.rb的新文件。 现在,我们已经创建了控制器!
为我们的控制器创建索引动作
如果刷新服务器,则会得到……好吧,另一个错误。 但这很快就会结束! 如果查看此错误,您将看到BlogController现在存在。 但是,它仍然需要采取行动来处理该请求。
将动作视为一种方法。 您将使用它来处理请求(在这种情况下,必须处理请求'localhost:3000 / blog')。 因此,我们现在将在我们的博客控制器中创建该索引操作,如下所示:
- 打开您的blog_controller.rb文件
- 在类内部,创建一个名为index的方法。 该方法实际上将处理路由器中定义的请求。
如果保存并刷新页面,则会遇到最后一个错误:该页面没有视图。
您会看到,该应用可以理解该请求。 它可以识别您的应用中有一个博客路由器。 然后,它将请求映射到博客控制器中的特定方法(索引方法)。 当时一切都正确。 但是,应用程序到达操作(索引操作)时会崩溃。 那是因为缺少一些东西:视图!
实际上,索引操作的工作是与视图进行通信并显示您请求的页面。 有时它也可以使用某些数据(来自数据库)来完成此操作。
在此简单指南中,我们将不使用任何数据库。 我们所需要的只是打印“ Hello World!” 在我们的博客页面上。 因此,让我们创建一个简单的视图。
创建视图
现在,该请求已映射到索引操作,您需要为其创建一个视图。
如果您还记得的话,我们使用“ rails generate controller blog”创建了控制器。
此命令还为我们的视图创建了一个新文件夹。 因此,如果您进入views文件夹,则会找到一个blog文件夹。
在此文件夹中,您可以为/ blog路径创建所有视图。 如果请求命中了索引操作,它将在您的views / blog文件夹中搜索一个名为“ index.html.erb”的视图。
因此,我们需要创建一个与索引操作同名的视图。 现在,继续在views / blog中创建一个名为“ index.html.erb”的文件。
扩展名html.erb可帮助您在同一文件中编写HTML和Ruby代码。 就这么简单。 但是,我们将像这样在文件中打印基本HTML代码:
现在,如果我们刷新页面,我们应该让该应用程序打印实际视图。
恭喜你! 您创建了第一个Rails应用程序!
样式化您的应用程序
如果要样式化应用程序,请知道这很容易。 命令rails generate controller blog
已经创建了blog.scss文件。 在此文件中,您可以使用常规CSS或sass设置博客页面的样式。
您可以像简单HTML和CSS页面那样定位HTML元素并设置其样式。
要设置应用程序的样式,请打开您的资源文件夹(在app文件夹内)。 然后转到样式表并打开blog.scss文件。 您可以在此处为博客页面添加所有样式。
结论
这是一个小指南,向您展示如何开始使用Rails。 但是,实践需要理解Rails和构建出色的Web应用程序。 Rails具有扎实的社区和文档。 在这种情况下,您几乎可以找到成为优秀开发人员所需的一切。 开始使用Ruby On Rails的最流行资源是其文档 。
翻译自: https://hackernoon.com/how-to-create-your-first-ruby-on-rails-application-in-no-time-nw423zf9
ruby on rails