自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

Active Record Validations 6 Performing Custom Validations 执行个性化校验

version Rails 4.16. 执行个性化校验当内建的校验辅助方法不能满足你的需求时, 你能够写你自己更喜欢的校验类或者校验方法. 6.1 Custom Validators 个性化校验个性化校验是类(class), 该类继承ActiveModel::Validator. 这些类必须实现一个validate方法, 它会带入一个record作为一个参数, 然后对这个...

2014-07-24 17:04:16 153

Active Record Validations 5 Conditional Validation 条件校验

version: Rails 4.1 5. 条件校验 有时当被给予的断言是满足条件的,才能去校验这个对象。你可以通过使用 :if 和 :unless 选项来实现,后面跟着的是一个标志,一个字符串,一段代码或者一个数组。当你想要执行校验时,你可以使用 :if 选项。当你想要不让校验发生时,那么你可以使用 :unless 选项。 5.1 Using a Symbol wi...

2014-07-24 15:24:26 203

Active Record Validations 4 Strict Validations 严格校验

version: Rails 4.1 严格校验 你也可以指定校验为严格的,当对象无效时,抛出异常 ActiveModel::StrictValidationFailed。 class Person < ActiveRecord::Base  validates :name, presence: { strict: true }...

2014-07-23 22:09:05 147

Active Record Validations 3 Common Validation Options 通常的校验选项

version: Rails 4.13 Common Validation Options 通常的校验选项下面是一些通常的校验选项: 3.1 :allow_nil 当值被检查到是 nil 的时候,:allow_nil 选项跳过校验。classCoffee < ActiveRecord::Base  validates :size, inclusion: {...

2014-07-22 22:30:13 156

Active Record Validations 2 Validation Helpers 校验辅助方法

version: Rails 4.12 Validation Helpers 校验辅助方法Active Record 提供了许多预定义的校验辅助方法(helpers), 你可以直接在你的类定义中使用. 这些辅助方法提供了一般性校验的规则. 每一次校验失败时, 一个错误信息被增加到对象的 errors 集合, 这个信息被关联到已被校验的属性. 每一个helper 接受属性名...

2014-07-22 16:21:07 210

Active Record Validations 1 Validations Overview 校验概述

version Rails 4.1 Active Record 校验 这份教程教你如何去校验对象的状态, 在他们进数据库之前, 使用 Active Record 的校验特征. 阅读完这份教程, 你将会知道:如何去使用内建的Active Record 校验helpers.如何去创建你自己定制化的校验方法.如何在校验的过程中去获取生成的错误信息. ...

2014-07-17 14:49:00 145

原创 Rails Database Migrations 9 Migrations and Seed Data 数据迁移和生成数据

version: Rails 4.19 Migrations and Seed Data 数据迁移和生成数据一些人使用数据迁移来给数据库增加数据:class AddInitialProducts < ActiveRecord::Migration  def up    5.times do |i|      Product....

2014-07-17 09:26:25 139

Rails Database Migrations 8 Active Record and Referential Integrity 相关的完整性

version: Rails 4.18 Active Record and Referential Integrity 相关的完整性Active Record 一直要求的是把智能化放在你的模型中, 而不是数据库中. 同样地, 类似于触发器或者外键限制的特征不能被过度使用, 这样会把一些智能化放回至数据库中. 类似于 validates :foreign_key, uniq...

2014-07-16 14:39:24 95

Rails Database Migrations 7 Schema Dumping and You 数据库模式输出

version: Rails 4.17 Schema Dumping and You 数据库模式输出7.1 What are Schema Files for? 数据库模式文件是为了什么?基本上就是 Migrations,对于你的数据库模式而言,Migrations 是没有验证的代码。其作用就是形成由 Active Record 产生的 db/schema.rb 或者 一个 ...

2014-07-16 14:01:39 117

Rails Database Migrations 6 Using Models in Your Migrations 在你的数据迁移中使用模型

version: Rails 4.1当在一个数据迁移文件(migration)里创建或者修改数据时, 通常比较吸引人的做法是使用你的模型中的一个. 毕竟, 他们的存在是为了提供更便捷的读取那些潜在的数据. 这是能够实现的, 但有些警告应该要被注意到. 例如, 问题的产生是在模型使用数据列时,1)这些数据列没有存在于数据库中 2)将会被这个或者随后的 migration 来创建。 ...

2014-07-14 15:53:07 108

Rails Database Migrations 5 Changing Existing Migrations 修改已存在的数据迁移文件

version: rails 4.1当在编辑数据迁移文件(migration)时, 偶尔地, 你难免也会犯下错误. 如果你已经开始运行数据迁移文件( migration)了, 那么你就不能再编辑这个数据迁移文件(migration)了, 以及去再一次地运行migration: 当你开始运行 rake db:migrate 时, Rails 会觉得它已经运行这个 migration了, 因此也...

2014-07-11 15:45:24 136

Rails Database Migrations 4 Running Migrations 运行数据迁移

version: rails 4.14 运行 migrations Rails 提供了一个 Rake 任务的集合,用来运行 migrations 的某个集合。 你将会使用的关于 Rake 任务的第一个数据前置的指令可能是 rake db:migrate。在它的最基本的form中,为了所有的还没有运行的 migrations, 它仅仅运行 change 或者 up 方法。如果还...

2014-07-10 23:23:47 622

Rails Database Migrations 3 Writing a Migration 编写数据迁移

version: rails 4.13 编写数据迁移一旦你已经创建了你的 migration,使用的是生成器中的一个,现在是时候让它工作了!3.1 Creating a Table 创建表 create_table 方法是最基本方法之一,但大多数时候,使用一个 model 或者 scaffold 生成器来为你生成数据表。基本的用法如下:create_table :p...

2014-07-06 23:20:19 156

Rails Database Migrations 2 Creating a Migration 创建一个数据迁移

version: rails 4.1 2 创建一个数据迁移2.1 Creating a Standalone Migration 创建一个单独的数据迁移migrations 被保存为文件,位于在 db/migrate 目录里,一个文件对应于一个migration class。文件名的格式是 YYYYMMDDHHMMSS_create_products.rb,那是一个 UTC 时间...

2014-07-02 21:37:07 119

Rails Database Migrations 1 Migration Overview 数据迁移概要

version: rails 4.1数据迁移(migration)是 Active Record 的一个特性,可以允许你更新你的数据库模式而无关乎时间性。比起用纯SQL语句写模式修改,数据迁移(migration)允许你用简单的 Ruby DSL 来描述你数据表的变更。 阅读完这份教程,你将会了解到:你可以创建生成器(generator)。Active Record 提供了...

2014-07-01 23:32:42 129

Switch to UTF-8 charset in Mysql on Ubuntu 对于Ubuntu的Mysql中, 选择UTF-8编码

对于Ubuntu的Mysql中, 选择UTF-8编码 当在Ubuntu中安装Mysql时, 默认的编码集可能是latin-1. 既然Ubuntu使用UTF-8作为大多数东西的编码集, 这样(latin-1)做就有点奇怪了. 但实际上很容易设置. Mysql的配置文件 /etc/mysql/my.cnf 有神奇的一行: !includedir /etc/mysql/c...

2014-06-30 15:33:05 124

Active Record Basics 8 Migrations 数据迁移

version: rails4 数据迁移 Rails 提供了一种基于领域的语言用来管理数据库模型,这称为数据转移。数据转移被保存为文件,能够在任何数据库中执行,Active Record 提供了命令 rake。下文是一个创建数据表的数据转移的例子:classCreatePublications < ActiveRecord::Migration  defcha...

2014-06-29 23:44:05 129

Active Record Basics 7 Callbacks 回调函数

version: rails4 在你模型的生命周期内,Active Record 的回调函数允许你对于特定的事件增加代码。当那些事件发生的时候,这使得你能够对于你的模型增加行为,只要直接产生代码即可,就如同当你创建一个新的记录时,修改它,销毁它等等。你可以了解到回调函数的更多知识,可以参考  Active Record Callbacks guide.  original: ...

2014-06-29 19:50:23 95

Active Record Basics 6 Validations 验证

version: rails4 6 验证​Active Record 允许你去验证一个模型的状态,在它被写入到数据库之前。这有一些方法你可以用来校验你的模型和验证属性值是否为空,是否唯一性和是否已存在于数据库中,以及遵从与一个特定的详细格式之类的。 当数据持久型到数据库的时候,验证是一个非常重要的问题需要考虑的,特别是这些方法 create, save 和 update ...

2014-06-28 15:13:16 102

Active Record Basics 5 CRUD: Reading and Writing Data 读写数据

version: rails 4CRUD是四个动作的缩写, 我们用来操作数据: 创建(Create), 查询(Read), 更新(Update)和删除(Delete).  Active Record自动创建方法, 允许一个应用来查询和操作已被保存在数据表中的数据. 5.1 Create 创建Active Record 对象能够从一个哈希队列, 一个代码库中被创建, 或者在创建...

2014-06-27 19:27:05 98

eXtremeTable ---- Overview 概要

概要Introduction 介绍eXtremeTable 读取着一个Beans的集合或者一个Maps的集合, 从被给予的servlet范围里抽取出来, 然后再次在JSP页面上显示出来. 被依次检索出来的servlet 范围是 page, request, session 和 application. eXtremeTable知道怎样从servlet范围中区分开来, 因为你可以在...

2014-06-24 16:21:54 119

eXtremeTable--Setup

配置 Requirements 需求Servlet 2.3 or higherJDK 1.3.1 or higher Minimum Jars Needed 最低的类库需求: commons-beanutils 1.6 (1.7 if sorting with nested properties)commons-collections...

2014-06-24 14:32:42 145

Active Record Basics 4 Overriding the Naming Conventions

version: rails44 重写命名约定 如果你需要遵循一个不同的命名约定,或者需要在你的Rails应用系统中使用一个遗留的数据将会怎么样?没有问题,你能够容易地重写默认的约定。 你能够使用 ActiveRecord::Base.table_name=方法来指明数据表名,类似于下文: classProduct < ActiveRecord::Base...

2014-06-23 22:54:58 92

Active Record Basics 3 Creating Active Record Models

version: rails43 创建Active Record 模型 创建Active Record models是非常简单的。你所需要做的就是实现 ActiveRecord::Base的子类, 你可以参考下面:classProduct < ActiveRecord::Baseend这会创建一个Product model,在数据库中映射一个produc...

2014-06-23 21:55:46 97

redmine Email Configuration

email设置 Configuration Directives配置指令 这个页面正在编辑中, 下文的配置指令仅仅只是其中的一部分.请查阅 Action Mailer Configuration 来获取更详细的信息. authentication 验证 验证方法的类型是由你的服务来提供的. 有效的设置:nil (或者省略...

2014-06-20 14:27:53 1215

Active Record Basics 2 Convention over Configuration in Active Record

version:  rails4 2. 在Active Record中,约定俗成取代配置文件 当在写应用程序时,使用其他的编程语言或者框架,可能会需要写大量的配置相关的代码。一般来说这确实存在于ORM框架中。然而,如果你遵守Rails中的一些约定,当创建Active Record模型时,你将只需写少量的配置代码(在有些情况下甚至没有配置)。建议就是,如果在大多数时候你都是用同一...

2014-06-19 09:44:31 82

eXtremeTable--PreferencesTutorial

PreferencesTutorial  关于配置的学习例子 为了全局性地设置属性值, 你将会需要用到配置的特性. 当前是用一个properties文件来实现的. 文档确实是个好工具, 用来描述如何在web.xml文件中建立配置相关项(Preferences), 以及去定义那些通常的属性. 在这里我想要讲的是, 关于配置特性的一些高级用法. tag特性是一个可插拔的接口, ...

2014-06-18 11:01:48 132

eXtremeTable--Export

Export导出 Introduction介绍 eXtremeTable本身有一个能力, 就是可以导出table内容为多种格式. 当导出时, 在过滤和排序后,  你将会得到完整的结果集.  分页不会影响返回的结果记录. 换句话说, 如果table内容显示在多页时, 所有页面的所有结果记录都会被导出. 导出的格式包括 Excel, PDF 和CSV. 为了导...

2014-06-17 17:04:10 142

eXtremeTable--Interceptor Tutorial

Interceptor Tutorial拦截器的学习例子 拦截器的特征就是被用来在运行时改变属性值的. 这使得能够改变eXtremeTable的行为, eXtremeTable是基于数据的. 如果你读过关于如何来扩展tag的属性, 那它是相同的概念和方法实现. 一般来说, 当你需要为tag增加属性的时候, 你应该使用扩展的tag属性, tag是被定义在TLD, 在JSP中可用.  当...

2014-06-17 10:28:57 107

Active Record Basics 1 What is Active Record?

version: rails 4 概要 ORM和Active Record是什么?以及他们在Rails中是怎样使用的?Active Record如何融入到MVC框架中?如何使用Active Record模型在关系型数据库中来操作数据的存储?Active Record模式命名的规则。数据库迁移,验证和回滚的概念。 1 What is Active Rec...

2014-06-16 22:31:57 96

rails4 9 Security

9.1 Basic Authentication基本认证如果你想要在线发布你的blog,任何人都能够增加,编辑和删除articles,或者删除comments。 Rails提供了一个简易的HTTP验证系统,在这种情况下能足以胜任。 在ArticlesController里,我们需要用一个方式来阻止访问任意的actions,如果访问者没有被认证的,这儿我们可以用Rails ...

2014-06-11 21:57:09 93

rails4 8.1 Deleting Associated Objects

如果你删除一个article,那么它关联的comments同样也会被删除。否则他们会在数据库中占据掉空间。Rails允许你用dependent属性,这是涉及到关联性中的一个属性来获取到这个。修改Article模型,app/models/article.rb 类似于下面:classArticle < ActiveRecord::Base  has_many :comments,...

2014-06-11 20:59:43 75

rails4 8 Deleting Comments

删除comments一个blog的另外一个重要的特征就是能够删除多余的comments。为了做到这个,我们需要在视图中实现一系列的代码,以及在CommentsController中实现destroy的action。 因此首先,让我们来增加删除的链接,在局部文件中 app/views/comments/_comment.html.erb:<p>  <st...

2014-06-10 23:34:38 82

rails4 7.2 Rendering a Partial Form

跳转一个局部form让我们同样地把那个新的comment部分移出来,形成自己的局部文件。再次创建一个文件 app/views/comments/_form.html.erb 包含下面代码 <%= form_for([@article, @article.comments.build]) do |f| %>  <p>    <%= f.lab...

2014-06-10 21:07:50 97

rails4 7 Refactoring

重构现在我们已经有可以操作的articles和comments,来看一下模板app/views/articles/show.html.erb。它变得越来越冗长和笨拙。我们可以用局部文件来清理. 7.1 Rendering Partial Collections首先,我们来建一个comment的局部文件, 把用来显示article所有的comment提取出来。创建这个文件 app/...

2014-06-09 23:10:24 81

原创 rails4 6.4 Generating a Controller

创建一个控制器刚在在学习模型的相关内容,你可以调整一下注意力来创建一个相对应的控制器。我们将再一次用以前用过的相同的命令:$ rails generate controller Comments这个命令会创建六个文件和一个空文件夹:File/DirectoryPurposeapp/controllers/comments_cont...

2014-06-05 23:00:19 122

rails4 6.3 Adding a Route for Comments

为 Comments(评论) 增加一个路由正如同 welcome的控制器一样,我们需要增加一个路由,以致于Rails会知道指向何处,让我们可以看到 comments。再一次打开配置文件  config/routes.rb,参照下面这样编辑:resources :articlesdo  resources :commentsend在articles内创建了一个内嵌的...

2014-06-03 22:04:31 113

rails4 6.2 Associating Models

Active Record关联性让你能简单地声明两个模型间的关系。这个例子就是关于 评论 和 文章 这两个模型间的关系, 你可以通过下面的说明来了解两者之间关系:每一个评论都属于一篇文章的。每一篇文章可以拥有许多个评论的。事实上,这已经非常接近其语法结构了,Rails通常就是这样来声明其关联性的。你已经在 评论 的模型中看到过这一行代码了 app/models/comment.r...

2014-06-03 21:46:10 81

原创 rails4 6 Adding a Second Model

是时候为应用程序增加第二个模型了。第二个模型将会用来处理关于文章的评论Comment。 6.1 Generating a Model 我们将会看到之前用过的同样的生成器,在创建Article模型的时候。这一次我们将会创建一个Comment模型,来关联到文章的评论。在命令窗口运行这个命令:$ rails generate model Comment commenter:...

2014-06-03 21:21:52 83

原创 rails4 5.13 Deleting Articles

现在我们准备来完成“D”这一部分,“CRUD”其中的一点,从数据库中删除articles。继续REST这茬儿,对于删除article的路由,只要运行 rake routes 查看其输出内容:DELETE/articles/:id(.:format)      articles#destroydelete的路由方法的使用是为了销毁资源。如果这个作为典型的get路由,它可能为了...

2014-05-28 22:46:57 104

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除