服务器位置
评论 157
服务器位置
评论 5
服务器位置
评论 2
服务器位置
服务器位置
服务器位置
服务器位置
Ruby是一种了不起的编程语言,而Ruby On Rails是基于Ruby的,因此您将需要学习如何在Ruby中编程以使用Ruby On Rails创建您的应用程序。
什么是Ruby on Rails?
Ruby on Rails是一个框架,可简化Web应用程序的开发,部署和维护,并使用一种称为Ruby的面向对象的语言。要对其进行介绍,开发人员需要了解其一些哲学。这些是:
干-不要重复自己:表示虽然Rails的开发在不同实体中具有相同的代码部分或相同的目的,但这意味着有更好的编写应用程序的方法;
约定优于配置:意味着Rails不需要确定配置,而是具有结构化和命名约定,这些约定实现了经常被引用的“最小惊喜”原则(POLS);
更少的软件:意味着使用更多约定,更少代码,更少复杂性,并因此减少错误数量。
框架是能够促进开发的库和工具的集合。好的框架为构建应用程序提供了基本但完整的基础结构。这些事实使Rails成为最好的之一。毕竟,它有一个独立的平台,完整且免费(开放源代码)许可。
Rails应用程序的开发是使用MODEL-VIEW-CONTROLLER(通常称为MVC架构)实现的,并与Active Record,Action View和Action Controller库一起使用。这些将在下面的文章中引用。
MVC模型
使用的这种架构模式将应用程序从逻辑上分为三类:模型,视图和控件(模型-视图-控制器)。 MVC标准的每个部分都是一个能够分别构建和测试的实体。模型表示数据,视图表示用户界面,控件表示操作,即模型是应用程序使用的信息,视图是表示形式,控件(控制器)是交互的指导者它们之间。
当用户与界面(视图)交互并调用事件时,此结构的周期开始。控制器从视图接收呼叫并访问模型,并经常更新接口。
Ruby on Rails库
在Ruby on Rails中,每个库都有一个专门的任务。合并后,这些个体实体将直接从MVC标准映射:
活动记录:一个负责数据库抽象和交互的库;
动作视图:一种模板系统,可生成用户由于对应用程序的请求而收到的HTML文档;
动作控制器:一个库,可同时操作:要在视图中显示的流量和库数据。
Ruby on Rails语言
许多其他语言要求您编写代码并复制它以检查结果和错误。但是,Ruby是一种一致且优雅的面向对象编程语言,而最好的是动态性,这意味着您使用的是“实时”语言,也就是说,您将收到有关给定每个命令的反馈。
交互式解释器是Terminal(如果使用Linux或Mac)或Cmd(如果使用Windows)中的IRB。要开始会话,请输入:
$ irb
irb(main):001:0>
Ruby有一个名为RubyGems的软件包,负责管理系统,并具有安装对Rails非常重要的库和实用程序的功能。从2.0.0版开始,由于它已经包含在其中,因此无需单独下载。
如何在Ruby on Rails上安装
要在计算机上使用Rails进行开发,将需要三个步骤:
安装Ruby;
安装Rails;
安装SQLite,这是默认数据库。
您将需要一些工具,例如在安装软件包时使用git以及一些可重用的Ruby文件库。
在Mac OS上安装Ruby on Rails
要在MAC上安装Ruby on Rails(在本文中,我们将使用X 10.8 Mountain Lion版本),您必须在计算机上安装:
XCode:这可以在App Store上免费获得,并且可以作为编译Ruby代码的来源。
家酿:是为OS X创建的以Ruby编写的软件包。这将帮助您安装其他部件。要安装,请输入终端并输入以下代码:
红宝石<(curl -fsSkL raw.github.com/mxcl/homebrew/go)
RVM:现在,您需要安装一个称为Ruby Version Manager(RVM)的通用Ruby工具。这将帮助您管理可在项目中使用的Ruby版本和各种gem。与Homebrew一样,在Terminal中只需一个命令:
curl -L https://get.rvm.io | bash -s稳定
如果使用Mavericks并且上面的代码不起作用,请在终端上运行以下代码:
ruby -e“ $(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)”
红宝石:Ruby语言已预先安装在Mac上。 2.0.0软件包包括RubyGem。要检查,请在终端中运行以下代码:
红宝石-v
如果提供了该语言的旧版本,则我们将更新为2.0.0版本。使用以下代码:
rvm安装2.0.0
安装完成后,我们需要告诉RVM我们要使用哪个版本的Ruby。为此,您将需要输入以下代码:
rvm使用2.0.0
要测试您的计算机是否使用这样的数字,请使用以下代码:
红宝石-v
终端中返回的内容是:ruby 2.0.0p481和其他取决于更新和安装时间的数据。
滑轨:最后,我们将安装只需要一个命令的框架:
宝石安装导轨
准备!您的计算机上已经有Ruby,Rails和SQLite。
如何在Windows上安装Ruby on Rails
要在Windows上安装Ruby on Rails,我们需要遵循以下过程:
红宝石:在Windows上,我们从语言开始。要安装,您需要进入网站。
根据您的计算机,您将单击Ruby 2.0.0-p481或Ruby 2.0.0-p481(x64)。下载安装程序后,您将单击该图标,继续,然后选择想要的安装文件夹以及要与Ruby软件包一起安装的文件夹。
Td / Tk支持:为Ruby提供图形用户界面(GUI =图形用户界面);
将Ruby可执行文件添加到您的PATH中:ruby被添加为可执行文件;
将.rb和.rbw与该Ruby安装相关联:具有这种格式的文件将与ruby关联。
建议标记最后两个。然后可以安装Td / Tk支持,并将其用于更高级的应用程序。完成后,输入命令提示符(开始> cmd),然后输入以下代码:
红宝石-版本
答案应该是ruby 2.0.0p481和其他取决于更新和安装时间的数据。
滑轨:由于Ruby 2.0具有RubyGems,我们只需使用以下命令进行更新:
gem更新系统
要安装Rails,gem命令可能需要一些时间,因此请再次输入cmd:
宝石安装导轨
要检查:rails -v
SQLite的:进入SQLite网站:并下载两个文件:SQLite和SQLite DLL。始终选择最新的可用信息。这些文件将为.zip格式。解压缩这两个文件,并将它们放在C:\ Ruby20 \ bin文件夹中或放置位置。要确定安装是否正确,请输入cmd并输入以下命令:
sqlite3版本
答案将是您下载的SQLite版本。最后,我们仍然需要安装Ruby库,该库允许它与SQLite之间进行联系。为此,在提示符下编写以下代码:
宝石安装sqlite3-ruby
准备!您已安装了一切,以在Windows计算机上启动应用程序。
在Linux上安装
Linux(和通常基于UNIX的系统)具有几个功能,但也有很多共同点。这些说明将基于Ubuntu Linux,但应适用于大多数UNIX系统。
在开始之前,您需要更新Ubuntu。打开终端并输入以下代码:
$ Sudo apt-get更新
apt-get程序在存储库中具有所有程序及其版本的缓存索引,以加快搜索速度。运行update命令可确保此列表是最新列表。
此外,我们需要安装以下项目:
卷曲:这是一个支持涉及URL的问题的库。为了使它更容易,我们将使用它。只需在终端中输入以下代码:
$ Sudo apt-get安装curl
红宝石注意:在安装Ruby之前,需要一些用于安装组件的库。输入以下命令:
$ Sudo apt-get install build-essential curl
现在,在Mac上,如果机器上安装了其他版本的Ruby,我们将使用Ruby Version Manager(RVM)。输入以下代码:
$ curl– L https://get.rvm.io |巴什稳定
要确保Ruby已经在您的计算机上,请键入以下命令:
红宝石-版本
滑轨:现在已经安装了RubyGems。然后,输入以下命令:
$ gem安装导轨
一段时间后,要检查Rails及其版本,请使用以下代码:rails --version
SQLite的:使用apt-get,您只需要一个命令:
$ Sudo apt-get install sqlite3 libsqlite-dev
如果一切顺利,您可以使用以下命令检查安装版本:$ SQLite– -version现在要在Ruby和SQLite之间建立关系,我们需要一个允许该联系的Ruby库。使用以下命令:
$ sudo gem install sqlite3-ruby
准备!现在,您可以开始在Linux Ubuntu上探索和创建Rails应用程序。
创建您的第一个Ruby On Rails应用程序
从现在开始,无论您使用什么操作系统,都可以在计算机上使用并阅读本文。
要创建项目,您需要使用终端,您将在其中提供命令,然后在所需目录中输入rails一词。在本文的这一部分,我们将介绍任何初学者作为他们的第一个应用程序需要做的事情:“ Hello World”。
请记住,您无需为项目创建文件夹,因为使用新命令时,将自动创建一个具有应用程序名称的文件夹。然后打开终端,输入所需的目录,然后键入:
$ rails新问好
执行此命令后,将在一个新生成的hello目录中创建几个文件。终端将显示所有创建的文件夹,其中一些是:
创造
创建自述文件
创建Rakefile
创建config.ru
创建.gitignore
创建Gemfile
创建应用
创建app / controllers / application_controller.rb
创建app / helpers / application_helper.rb
创建app / views / layouts / application.html.erb
创建应用程序/邮件
请注意,已经创建了一个名为app的子目录。在此介绍了MVC标准的视图,模型和控制器。
帮助器是库的一部分,将帮助视图和控制器之间的“关系”。在应用程序中还将包含以前未提及的邮件,但将成为应用程序电子邮件问题的一部分。
现在,我们将迷你项目放置在本地Web服务器上,以便可以对其进行测试。没有编写任何代码,但是,Rails为您提供了一个初始屏幕。但首先,请确保它位于终端中应用程序的目录中,并且您的gem是最新的。为此,请使用以下代码:
$捆绑安装
当您的宝石检查和安装完成后,编写代码:
$ rails服务器
初始化时,IP地址0.0.0.0出现在端口3000上。不要被这些零警告。它们仅表示服务器在终端中运行时在您的计算机上本地运行。然后输入任何浏览器并访问URL http://www.localhost:3000 /,您将看到Ruby on Rails Hello World页面。
在Ruby on Rails中生成控制器
首先,通过按Ctrl + C停止本地服务器,将其保留在项目文件夹中。现在,我们将创建一个控制器来发送消息Hello World。
rails generate命令会为您的项目创建某些文件。您正在处理创建某些文件的请求和响应周期,因此您将创建一个负责问候的控制器,如下所示:
$ rails生成控制器称呼
将创建控制器和与其相关的文件,例如视图,测试和帮助器。您可以手工创建,但可以加快生产速度。
现在,以展示“ Hello World”您将需要通过创建操作来修改app / controllers / salutationcontroller.rb文件。在编辑器中打开此文件并进行以下更改:
SalutationController类<应用控制器
def你好
@message =" Hello World!’
结束
结束
动作在Ruby中作为方法实现,其中def是关键。在该方法中,您创建了一个名为message的实例化变量,其值将被放入浏览器中。
在Ruby on Rails中生成模板
该操作已成功创建,因此下一步是添加一些要在Web上显示的HTML。使用MVC标准(用于分隔文件),此代码将出现在视图中。
默认设置是始终使用控制器中操作的名称创建视图。然后,在访问应用程序/视图时,您将看到已创建称呼目录,但没有文件。在编辑器中打开一个新标签,将其命名为hello.html.erb,并将其保存在app / views / salutation中。
您可能想知道为什么HTML文件末尾的格式是.erb。这种格式是Erb模板库的一部分,Erb模板库是一个Rails库,负责允许在HTML代码中使用Ruby代码。
Ruby语法是通过<%=%>引入的。当它将以HTML形式显示值时,即< %%>当它只有逻辑时,称为嵌入式Ruby输出标签。
输入app / views / salutation / hello.html.erb文件并添加以下序列:
< html>
< body>
< h1><%= @消息%< / h1>
< / body>
< / html>
现在,您必须告诉Rails如何响应URL,负责人员将是config目录中的route.rb。目前,您不必太担心细节,因为这只是开始,您仍然缺少会一点一点地提供的信息。在文本编辑器中打开config / routes.rb并替换写的内容(无需删除注释,这些注释在句子前带有#):
您好:: Application.routes.draw做
得到‘:controller(/:action(/:id(。:format)))’
结束
您要求在浏览器中的URL http:// // localhost:3000 / salutation / hello上显示该消息。打开后,您的消息“ Hello World!”将会出现。
ASP.NET MVC中的身份验证:
在ASP.NET MVC应用程序中实现身份验证机制。我们将在此处创建一个项目,其中包括用户注册,登录,注销和密码更改,这是对登录用户具有受限访问权限的任何应用程序的基本功能。
使用ACL在Laravel中进行访问控制:
要使用Laravel(世界上使用最广泛的PHP框架)实现授权系统。为此,我们将从具有所有用户注册和身份验证部分的应用程序开始。
ASP.NET MVC和身份:对用户的声明授权:使用ASP.NET Identity实现访问控制机制,该机制使我们可以为用户分配角色,并从中定义可以查看的页面和菜单。
有关Ruby的更多信息
Ruby中的架构模式:
这说明了使用ArchRuby来表达体系结构模式和良好实践,这些构架和良好实践一旦保存,将有助于软件系统的可维护性。
Ruby中的重构:使用Extract Class技术:
了解Extract类重构技术,并学习如何在Ruby语言中使用它来提高代码质量。
使用IRB的Ruby的数组和块:
使用数组和块在Ruby中进行开发。数组有几种有助于促进开发人员工作的方法,而块是Ruby带来的好消息。
使用Ruby On Rails创建一个简单的应用程序:
构建一个简单的应用程序以演示Ruby On Rails框架提供的有趣功能