这三个方法在ROR中经常用到,都是用来判断是否为空的. 区别是: ruby的方法:.nil?..empty? rails的方法 :.blank? 用法的区别: .nil?    :   判断对象是否存在. .empty? :   是对象已经存在,判断是否为空字段. .blank?  :   相当于同时满足 .nil? 和 .empty? . 注: Rails API中的解释是如果对象是:false, empty, 空白字符都是blank. 比如说: "", " ",…
Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出键值对. for key in dict: #迭代键 for val in dict.value(): #迭代值 for k,v in dict.items(): #迭代键值对 当迭代列表时,通过内置函数enumerate()可以迭代出索引加值. for i in list #迭代列表 for i…
要学习及应用好Ext框架,必须需要理解Html DOM.Ext Element及Component三者之间的区别. 每一个HTML页面都有一个层次分明的DOM树模型,浏览器中的所有内容都有相应的DOM对象,动态改变页面的内容,正是通过使用脚本语言来操作DOM对象实现.(通常使用getElementById/Ext.getDOM获得DOM对象) 仅仅有DOM是不够的,比如要把页面中的某一个节点移到其它位置,要给某一个节点添加阴影效果,要隐藏或显示某一个节点等,我们都需要通过几句 javascrip…
前面分别讲了delegate.notification和KVO的实现原理,以及实际使用步骤,我们心中不禁有个疑问,他们的功能比较类似,那么在实际的编程中,如何选择这些方式呢? 在网上看到一个博客上详细的分析了三者之间的区别以及各自的优势,博文地址为http://blog.shinetech.com/2011/06/14/delegation-notification-and-observation/,因为博文是用英文写的,下面将其翻译成中文. 在开发ios应用的时候,我们会经常遇到一个常见的问题…
$POST .$HTTP_RAW_POST_DATA.php://input三者之间的区别 访问原始 POST 数据的更好方法是 php://input或者$HTTP_RAW_POST_DATA.$HTTP_RAW_POST_DATA 对于 enctype="multipart/form-data" 表单数据不可用. 1:$POST我们常用的就不用介绍了吧 2:$GLOBALS['HTTP_RAW_POST_DATA']: 基本上$GLOBALS['HTTP_RAW_POST_DATA…
最近看了Javascript高级教程中对过滤输入的介绍,想实现比如电话号码中不能包好非数值的字符,而相应文本中插入字符的操作是keypress事件,所以就想通过阻止这个事件的默认事件行为来阻止这个事件的默认行为来屏蔽此类字符,但是屏蔽之后所有的安检操作都会被屏蔽,文本框会变成可读的.如果只想屏蔽特定的字符,需要检测keypress事件对应的字符编码,然后决定如何响应. 但是我在利用keypree事件的时候,完全搞蒙了.因为前面看了keydown.keypress.keyup事件,它们到底怎么用呢…
@private.@protected与@public三者之间的区别 类之间关系图 @private只能够使用在声明的类当中,其子类也不能够使用用@private声明的实例变量 @protected只能在声明的类当中使用,但其子类具有使用@protected声明变量的资格 @public可以全局使用,属性是具有全局属性的 实例变量其实是支持KVO的,如果你帮实例变量写了setter,getter方法 相关源码 #import <UIKit/UIKit.h> @interface TitleVi…
.NET.C#和ASP.NET三者之间的区别与联系 1..net(dot net) .net是一个平台,抽象的平台概念. 实现形式是库:①定义了基本的类型(通用类型系统CTS,common type system).   ②包含.net公共语言运行库(CLK,common language runtime,负责管理用.net库开发的所有应用程序的运行). 核心是.net framework NET Framework包括两个关键组成元素: a.Common Language Runtime,公共…
1.C#中string.Empty.""和null 之间的区别 (http://blog.csdn.net/henulwj/article/details/7830615)…
刚毕业后出去找工作面试的时候就遇到这个问题!.回答不上来.回来网上查的如下: 那么 .NET.C#和ASP.NET这三者之间区别不清楚,到底它们之间有什么联系呢? 1..NET是一个平台,一个抽象的平台的概念. .NET平台其本身实现的方式其实还是库,抽象层面上来看是一个平台. 本人理解的.NET核心就是.NET Framwork. .NET Framework包括两个关键组成元素: a.Common Language Runtime,公共语言运行时(CLR)-提供内在管理,代码安全性检测等功能…
http.TCP/IP协议与socket之间的区别下面的图表试图显示不同的TCP/IP和其他的协议在最初OSI模型中的位置: 7 应用层 例如HTTP.SMTP.SNMP.FTP.Telnet.SIP.SSH.NFS.RTSP.XMPP.Whois.ENRP 6 表示层 例如XDR.ASN.1.SMB.AFP.NCP 5 会话层 例如ASAP.TLS.SSH.ISO 8327 / CCITT X.225.RPC.NetBIOS.ASP.Winsock.BSD sockets 4 传输层 例如TC…
@property (nonatomic, assign) NSString *title; 什么是assign,copy,retain之间的区别? assign: 简单赋值,不更改索引计数(Reference Counting). copy: 建立一个索引计数为1的对象,然后释放旧对象 retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1 weak 和strong的区别: (weak和strong)不同的是 当一个对象不再有strong类型的指针指向它的时候 它会…
当我们想部署网站的时候,经常会听到vps.云主机.虚拟机等关键字,那么你知道这几者之间的区别吗?本文就讲解一下VPS.云主机.虚拟机之间的区别. 什么是VPS VPS 是Virtual Private Server的英文缩写,即虚拟专用服务器.VPS就是讲一台物理服务器分隔成多个独立的虚拟专享服务器.要实现VPS需要容器技术和虚拟化技术. 容器技术是什么呢?容器顾名思义就是装载东西的,容器技术就是将各种各样的功能打包成一个整体,而容器就是装载这个整体的.比如现在很火的Docker就是容器技术的一…
一.单向n-1 单向n-1关联只需从n的一端可以访问1的一端. 域模型: 从Order到Customer的多对一单向关联.Order类中定义一个Customer属性,而在Customer类不用存放Order对象的引用.      Order.java public class Order{ private Integer uid; private String name; private Customer cus; //省略get.set方法 } Customer.java public cla…
学习来源:http://www.codesky.net/article/200910/166595.html truncate(text, length = 30, truncate_string = "...") text是原字符串 length是需要截取的字符串长度,包括中文和英文字符,如果不写,则有默认值,是28 truncate_string是截取后末尾添加的字符结尾,默认是三个点的省略号. 如果字符串未达到指定长度,则不会发生变化. 简单示范一: truncate("…
一.Collection概述 1.数组和集合的区别 (1)长度区别      数组长度是固定的,集合长度是可变的. (2)存储内容区别      数组只能存放同一种类型的元素(基本类型/引用类型).      集合可以存储不同类型的对象.   二.集合的体系 Collection Collection是集合体系的根接口,它包含了集合的基本操作和属性. Collection包含了List和Set两大分支. (1)List是一个有序的队列,每一个元素都有它的索引,第一个元素的索引值是0.     L…
今天继续学习Django,今天主要掌握两个小点 一.如果为Django项目中引入静态文件 1.先要在project目录下创建static的目录,然后将jquery文件拷贝这个目录下就可以了 2.在project的settings文件中静态文件的路径,注意,这里的逗号千万不可省略,不然Django会报错的 3.在html文件就可以引入这个jquery文件了 二.下面我们学习下如何前台提交数据到后台 1.先在html文件中写一个form表单,用来提交数据,我们就提交db这个url中,用post的方式…
bootstrap表格 Bootstrap 提供了一个清晰的创建表格的布局.下表列出了 Bootstrap 支持的一些表格元素: 标签 描述 <table> 为表格添加基础样式. <thead> 表格标题行的容器元素(<tr>),用来标识表格列. <tbody> 表格主体中的表格行的容器元素(<tr>). <tr> 一组出现在单行上的表格单元格的容器元素(<td> 或 <th>). <td> 默认的…
一.Lua 模块与包 模块类似于一个封装库,从 Lua 5.1 开始,Lua 加入了标准的模块管理机制,可以把一些公用的代码放在一个文件里,以 API 接口的形式在其他地方调用,有利于代码的重用和降低代码耦合度. 1.定义-- 文件名为 module.lua-- 定义一个名为 module 的模块module = {} -- 定义一个常量module.constant = "这是一个常量" -- 定义一个函数function module.func1() io.write("…
1.列表(list) 列表是Python的一种内置数据类型,list是一种有序的集合,可以随时添加和删除其中的元素,就像动态数组一样.获取list中的元素用角标获取,角标可以使用正角标,也可以使用负角标,list中的元素的数据类型也可以不一样,也可以在list内放另外一个list,这样也就形成了一个多维集合.用方括号[]扩起来. list常见的方法: len(list) #获取lest长度 list.append() #末尾追加元素 list.pop() #弹出末尾元素 del list[x]…
多表查询:查询结果需要用到两个或者以上表,此时需要多表连接,产生多表查询 1.内连接(等值连接) 示例:将两个表内容连接显示 select * from dept d, emp e where d.deptno = e.deptno; 注意:只有当d.deptno = e.deptno条件满足,内容才会显示,否则不显示 2 .外连接:让等值判断左右两边有一边的数据可以全部显示出来,使用外连接方式时使用”(+)” 格式:   左外连接:字段=字段(+) 右外连接:字段(+)=字段 示例:显示雇员的…
App文件夹子文件夾功能介绍 (1)controllers  存放驱动业务逻辑的控制器 (2)helpers       存放视图辅助类,一些常用的代码段 (3)mailers       Rails3中新增,用于存放与邮件服务相关的类 (4)models       存放数据描述结构.验证和完整性规则等模块 (5)views         存放生成HTML的所有模版文件,也可以存放CSS.图片     public 文件夾   (public文件夹主要用于存储Rails应用的通用资源.例如,…
该系列学习基于rails4.0 数据表:admins (id, name, address), articles (id, admin_id, title) admin_id 是表articles中的外键,和表admin中的id对应,表admins和表articles是一对多的关系   下面是配置方法,由于本人很菜,配置过程中的各种苦逼~ 1. 在migrate文件夹中找到xxxx_create_articles.rb文件     进行修改配置,配置如下:(部分代码) class CreateA…
Rails连接MYSQL数据库,默认显示UTC时间.如果想要改成中国时区时间,按照下面修改: 在config/application.rb中找到 class Application < Rails::Application 加上下面两句 class Application < Rails::Application …… config.active_record.default_timezone = :local # 注释1 config.time_zone = 'Beijing' # 注释2…
 TimeDate格式化输出: DateTime.parse(Time.now.to_s).strftime('%Y-%m-%d %H:%M:%S').to_s #就是按照2013-8-16 16:42:13的格式输出 如果只想输出日期,而不要输出具体时间 DateTime.parse(Time.now.to_s).strftime('%Y-%m-%d').to_s #就是按照2013-8-16格式输出 反向格式化(将字符串转化为日期格式): DateTime.parse(params['dat…
计算下一天的这个时刻, # 比如"2013-8-16 18:45:12" 的下一天的这个时刻 “2013-8-17 18:45:12” Time.now + 1.day 如果想得到下一天的凌晨时间 # 下一天开始的0时0分0秒 Time.now.at_beginning_of_day + 1.day 当求某一天的几个月后的日子时,例如2013-8-31的6个月后的日期会是什么呢? # 假设Time.now为2013-8-31 12:12:12 puts Time.now + 6.mon…
    Rails -- 时间的内置函数和格式说明 FROM:http://www.douban.com/note/99064603/ time = Time.now #获得当前时间 time.gmtime #得到格林威治時間,Wed Jun 06 17:05:45 UTC 2007 time.day #传回一个月的第几天 time.gmt? #time是否为格林威治时间 time.hour #传回24HR的第几个小时 time.localtime #把time转换为本地时间 time.mday…
     Rails -- filename去除扩展名 简单例子:params[:upload]['preview'].original_filename 的值为templateOne.html.erb template_name = File.basename(params[:upload]['preview'].original_filename, ".html.erb").to_s 获得的template_name的值为templateOne.…
extends override 和super方法 override field 父类不是val对象不能覆盖field isInstanceOf和asInstanceOf(isInstanceOf是用来判断对象,asInstanceOf用来转换对象) getClass和classOf 使用模式匹配进行类型判断 protected 抽象类 抽象field…
一.概述     Redis的主从复制策略是通过其持久化的rdb文件来实现的,其过程是先dump出rdb文件,将rdb文件全量传输给slave,然后再将dump后的操作实时同步到slave中.让从服务器(slave server)成为主服务器(master server)的精确复制品. 以下是关于 Redis 复制功能的几个重要方面: (1)Redis 使用异步复制.从Redis 2.8 开始,从服务器会以每秒一次的频率向主服务器报告复制流(replication stream)的处理进度. (…