dup和deep_dup的区别:
Hash = {a: 1}
B = hash.dup
Hash[:a] = 2
B[:a] = 2
这个问题怎么解决,研究了40分钟左右,终于找到解决方案了,clone等同于dup,属于浅拷贝,不会复制内部对象,所以当我们修改了hash内部的键值a,那么另一个的键值a也就被修改了,这个时候要使用deep_dup来解决这个问题
method = User.method(:first)
method.source 可以获取到first的函数代码
def info(name, age:)
puts "name: #{age}"
end
info("zcy", age: 18)
参数加冒号,标识hash
Rails.application.config_for(config下的yml文件): 获取config下的yml文件的配置信息
rails关联的方法会自动使用缓存,如果不想缓存,可以如下: customer.orders;customer.orders.size;customer.orders(true).empty?;
关联关系表单: category has_many properties
<%= f.collection_check_boxes :property_ids, Property.all, :id, :name %>
或
<% Property.roots.each do |property| %>
<%= check_box_tag "category[property_ids][]", property.id, @category.persisted? && @category.properties.include?(property) %><%= property.name %>
<% end %>
0.31E-4: 这样的展现形式很糟糕,可以BigDecimal((0.31E-4).to_s).to_s
[1,2,3].sample(2) : 随机返回数组中的两个元素
#areaindex_nav_heigh_background ul li a{color:#FFFFFF;font:13px/20px "微软雅黑";padding:5px 15px}
e 移动到词尾
b 移动到词首
pry
git切tag: clone了git上的项目后,需要对某个版本下的项目进行修改,可以先切tag,步骤如下:
git tag 查看版本
git checkou 版本号
git co -b 分支
修改内容
push到远程分支下
然后Gemfile中制定分支的gem
accepts_nested_attributes_for :属性 ,这个属性无法验证uniquness
rails 先校验,后回调方法,如果校验不通过,那么是不会调用回调方法的
rails中的i18n配置中,命名空间是 resume/job_target 这样的形式
factory_girl 中创建1对多关联关系 的对象时,可以这样,如下
factory :resume_job_target, class: "Resume::JobTarget" do
association :resume
job_classes {[FactoryGirl.create(:dict_job_class)]}
end
$("form").submit(function(e){
e.preventDefault();
});
ajax 请求json数据,服务器端如果返回中文时,必须to_json,否则返回时,执行error函数
current_page?(url) 判断是否是当前页面
data: {uid:function(){ return jQuery("#<%=txtUid.ClientID %>").val();}}
而使用function的好处就是在页面加载的时候仅仅告诉jQuery.Validate,在控件需要进行remote验证的时候需要调用function这个函数,这样就保证了在执行remote验证的时候可以获取到最新的值
css代码只在firefox下生效
@-moz-document url-prefix() {
.....
}
linux系统中, 命令后加&,可以后台运行,例如 rails server&
firefox 启动多个配置文件(多用户): '/home/zcy/桌面/到 firefox 的链接' --no-remote
date_select 日期倒序排列, start_year: Date.current , end_year: Date.current - 80
render(view, locals, buffer=nil, &block) eg: <%= render 'form', a: "a" %>
render(options = {}, locals = {}, &block) eg: <%= render partial: 'form', a: "a" %>
修改网上的gem,首先fork,fork后创建分支,在分支上修改,写的时候,在项目中用下列方式指向正在修改的本地gem,这样就方便多了
gem '....', path: "本地路径"
display: inline-block; 我们常常遇到这种需求,就是块元素,但是需要并排显示,这时就可以使用inline-block了
Info.all.size > 0 等同于 Info.all.any?
错误:
<%= yield(:search) if content_for?(:search) %>
<% content_for :search do %>
zhangcaiyan
<% end %>
正确:
<% content_for :search do %>
zhangcaiyan
<% end %>
<%= yield(:search) if content_for?(:search) %>
"resume_target".camelize => "ResumeTarget"
"ResumeTarget".underscore => "resume_taget"
"User".constantize User (类型为User class)
camelize.underscore
git cherry-pick 101ccea merge某个提交模块
过滤html代码 strip_tags(string)
unicorn应用服务器 代替 passenger
<a class="info new"> 获取样式可以这样 $(".info.new")
如果本地有预编译的文件,那么程序先执行预编译的文件
response = Timeout::timeout(10) do
open(url)
end
以下这种写法可以用于图片上的链接
<%= link_to path do %>
name
<%%>
间隔迭代: [1,2,3,4,5].each_slice(3){|a, x| puts a}
before_filter: :a, :b 先检测后面的b,然后才是a
jquery validate 指定了 onkeyup: false, onfocusout: false, onclick: false,在提交表单的时候会导致验证无论是否通过都会提交,这时可以通过提交的时候指定验证属性来解决这个问题, register_validator.element("#register_user_email")
f.select 添加class,注意,因为select加两个hash参数,最后一个才是html相关的参数,所以在class之前要加一个{}
<%= f.select :province_id, options_for_select(form_provinces(@gongqiu).collect{|obj| [obj.name, obj.id]}), {include_blank: "请选择省份"}, class: "region_relation_province_id" %>
erb中的html.erb js.erb json.erb: 分别是对应的rails respond返回的html和js和json的格式,当我们实现一个ajax的编辑表单效果时,可以在json.erb中写好整个的表单,然后再返回该json.erb表单。erb中要注意写json数据,否则无法获取数据,如下:
{ "html": <%=raw render("form.html.erb", experience: @experience, url: resume_experiences_path).to_json %> }
判断element父元素是否存在,可以这样element.parents(".time_range") > 0
在jquery中可能会遇到这种需求,某个元素下的某元素的指定的那个或者最后一个,这样用:last就不行,:last只能获取最后一个,而:last-of-type可以是多个。 $(".form select:last-of-type")
/[^[\u4E00-\u9FA5|\d|\w]]*/ 匹配所有非中文和非英文非数字的字符
jquery 1.9 中需要注意 1:绑定事件时使用on,不用bind 2: 不能使用live 3: attr("value") 获取文本框的值改为val()
encodeURIComponent: js对url进行转码
分享到:
相关推荐
"经济学基础知识大全" 本资源摘要信息涵盖了经济学基础知识大全的主要概念和理论,涵盖GDP、GNP、CPI、通货膨胀、通货紧缩、居民可支配收入、恩格尔系数、基尼系数、财政收入、财政赤字、财政盈余、税收等经济学...
高中生物学理论知识是教师资格证考试的重要组成部分,它涵盖了生命科学的基础理论和实际应用。对于准备参加高中生物教师资格证考试的考生来说,掌握这些知识点是考试成功的关键。 首先,细胞是构成所有生物体的基本...
2022历史学考研必背知识要点:一战后初期各国 2022历史学考研必背知识要点:一战后初期各国 2022历史学考研必背知识要点:一战后初期各国 2022历史学考研必背知识要点:一战后初期各国 2022历史学考研必背知识要点:...
因此,高校教师应重视培养学生的探究能力、分析能力和创新思维,使学生能够不仅仅学习到知识,更能够学会如何学习。 在讨论学习风格时,我们不能忽视奥苏泊尔提出的接受学习与有意义学习的差异。接受学习依赖于教师...
**CSP认证必学知识点详解** CSP,全称Contest Software Professional,是中国计算机学会(CCF)举办的NOI(全国青少年信息学奥林匹克竞赛)在线初赛的重要组成部分。这个认证旨在检验参赛者在编程和算法设计上的...
妇科诊断学基础知识.pptx
护理学是医学的一个重要分支,涵盖了对病人进行照顾和管理的专业知识...整体而言,基础护理学涉及到的这些知识点覆盖了从环境管理到心理支持,从基本医疗知识到人际交往技巧等多个方面,是护士工作中不可或缺的一部分。
学习嵌入式开发需要掌握一系列基础知识,以确保能够全面理解和应用这一技术。以下是一些核心的知识点: 1. **C语言**:C语言是嵌入式领域的基础,无论是软件还是硬件开发,C语言都至关重要。要熟练掌握C语言的基础...
政治学概论知识点总结.docx
电子学基础知识.pdf
信息学奥赛NOI和NOIP的基础知识,PPT版本,准备参加信息学奥赛的同学可以下载看看哦!
《信奥帮-信息学奥赛-CSP-J1S1初赛集训知识点解析》 在信息技术日益发展的今天,信息学奥赛(IOI)已成为青少年展现编程技能和逻辑思维能力的重要舞台。CSP(Contest Selection Process)是NOIP(全国青少年信息学...
以下详细总结了相关的眼科学知识点,供学习和复习使用。 首先,眼球壁分层知识点涵盖了多个方面: - 角膜是眼球壁的一部分,分为五层结构,每层有其特定功能和特点。角膜具有一定的再生能力,但效果有限。 - 角膜缘...
压缩包中的“教育学知识框架”文件,很可能是以图表或文本形式详细列出了以上各个领域的关键知识点,便于学习者逐个攻破,构建起完整的教育学知识网络。 总的来说,这个知识框架不仅对备考教育知识考试的考生有所...
密码学基础知识总结,包括数论基础知识,非对称和公钥加密签名知识概括。
电化学热力学是研究电化学反应的热力学性质的学科, 涉及到电化学反应的热力学基础知识架构。下面是电化学热力学基础知识架构的整理。 1. 内电势:内电势是指导体中的电荷在电场作用下移动时的电势差。当没有电流...
通过对电磁学知识结构体系的深入探讨,我们不仅可以理解电荷、电场、磁场、电磁波的本质,还能够掌握它们之间复杂的相互作用及其在现代科技中的应用。 电学的核心概念是电场。电场通过电场线来描述其分布状态,这些...
一些信息学的基础知识,相当有用。建议每个做信息学比赛的人都看一看。
"电化学基础知识-双电层知识架构汇总" 双电层是电化学基础知识的重要组成部分,它对电化学系统的影响非常大,包括半导体/溶液界面、电镀、阳极氧化、表面活性剂等等。双电层的重要性不言而喻,它影响着几乎所有的...
从马克思主义经济学的角度来看,知识产权私有制是资本主义生产关系中的一部分,它为特定阶级保护其利益服务,而国际知识产权规则则体现了强国利用知识产权作为维持全球商业秩序的工具。 首先,知识产权私有制是指将...