一. 关于测试的补充 1.MiniTest报告程序 为了让 Rails 应用的测试适时显示红色和绿色,我建议你在测试辅助文件中加入以下内容: (1).打开文件:test/test_helper.rb 修改之后,再测试时的样子将会是: 2.使用Guard自动测试 使用 rails test 命令有一点很烦人, 总是要切换到命令行然后手动运行测试.为了避免这种不便, 我们可以使用 Guard 自动运行测试.Guard 会监视文件系统的变动, 假如你修改了 static_pages_controlle…
接上篇: 一.Sass 和 Asset Pipeline Rails 中最有用的功能之一是 Asset Pipeline, 它极大地简化了静态资源文件(CSS.JavaScript 和图像)的生成和管理.咱先概述 Asset Pipeline 的作用, 然后说明如何使用 Sass 这个强大的 CSS 编写工具. 1.Asset Pipeline Rails 开发者要理解 Asset Pipeline 的三个概念: 静态资源目录, 清单文件, 以及预处理器引擎. (1). 静态资源目录 注:现在我…
注册 一.调试信息和 Rails 环境 现在咱们要实现的用户资料页面是我们这个应用中第一个真正意义上的动态页面.虽然视图的代码不会动态改变, 不过每个用户资料页面显示的内容却是从数据库中读取的.添加动态页面之前, 最好做些准备工作, 现在我们能做的就是在网站布局中加入一些调试信息, 如下图所示.这段代码使用 Rails 内置的 debug方法和 params 变量(以后再做详细介绍), 在各个页面显示一些对开发有帮助的信息. 1.在网站布局中添加一些调试信息 打开文件:app/views/lay…
接上篇 一. 添加安全密码 我们已经为 name 和 email 字段添加了验证规则, 现在要加入用户所需的最后一个常规属性: 安全密码.每个用户都要设置一个密码(还要二次确认), 数据库中则存储经过哈希(hash)加密后的密码(这里的hash是加密算法). 验证身份的方法是, 获取用户提交的密码, 哈希加密, 再与数据库中存储的密码哈希值对比.如果二者一致, 用户提交的就是正确的密码, 用户的身份也就通过验证了.我们要对比的是密码哈希值, 而不是原始密码, 所以不用在数据库中存储用户的密码.因…
用户建模 一. User 模型 实现用户注册功能的第一步是,创建一个数据结构,用于存取用户的信息. 在 Rails 中,数据模型的默认数据结构叫模型(model,MVC 中的 M).Rails 为解决数据持久化提供的默认解决方案是,使用数据库存储需要长期使用的数据.与数据库交互默认使用的是 ActiveRecord.Active Record 提供了一系列方法,无需使用关系数据库所用的结构化查询语言(Structured QueryLanguage,简称 SQL),就能创建.保存和查询数据对象.…
接上篇 一. 注册表单 用户资料页面已经可以访问了, 但内容还不完整.下面我们要为网站创建一个注册表单. 1.使用 form_for 注册页面的核心是一个表单, 用于提交注册相关的信息(名字.电子邮件地址.密码和确认密码).在 Rails中, 创建表单可以使用 form_for 辅助方法, 传入 Active Record 对象后, 使用该对象的属性构建一个表单. 回顾一下: 注册页面的地址是 /signup, 由 Users 控制器的 new 动作处理.首先, 我们要创建传给 form_for…
一. Ruby内置的辅助方法 1.打开文件:app/views/layouts/application.html.erb(演示应用的网站布局) 来咱把注意力放在圈起来的那一行: 这行代码使用 Rails 内置的 stylesheet_link_tag 方法, 在所有媒介类型中引入 application.css .对有经验的 Rails 开发者来说, 这行代码看起来很简单, 但是其中至少有四个 Ruby 知识点可能会让你困惑: 内置的 Rails 方法, 调用方法时不用括号, 符号(Symbol…
登陆 一. Sessions 控制器 登录和退出功能由 Sessions 控制器中相应的 REST 动作处理 : 登录表单在 new 动作中处理, 登录的过程是向 create 动作发送 POST 请求, 退出则是向 destroy 动作发送 DELETE 请求. 1.首先生成 Sessions 控制器, 以及其中的 new 动作: $ rails generate controller Sessions new Users 资源使用特殊的 resources 方法自动获得 REST 式路由,…
续上篇: 一. 有点内容的静态页面 rails new 命令创建了一个布局文件, 不过现在最好不用.我们重命名这个文件: $ mv app/views/layouts/application.html.erb layout_file # 临时改动 注:在真实的应用中你不需要这么做,不过没有这个文件能让你更好地理解它的作用. 注:关于表题所需变动的部分 1. 添加标题 添加标题之前,我们要知道网页的一般结构,如下图所示: 我们要使用 assert_select 方法分别为app/views/sta…
添加一些结构 一.网站导航 1.添加一些结构后的网站布局文件 打开文件:app/views/layouts/application.html.erb 简单介绍一下,添加的代码: 我们从上往下看一下这段代码中新添加的元素.前面简单介绍过,Rails 默认使用 HTML5(如文档类型声明 <!DOCTYPE html> 所示).因为 HTML5 标准还很新, 有些浏览器(特别是旧版 Internet Explorer)还没有完全支持,所以我们加载了一些 JavaScript 代码(称作 HTML5…
原文标题:Autotesting JavaScript with Jasmine and Guard 原文地址:http://edspencer.net/2013/06/15/autotesting-javascript-with-jasmine-and-guard/ 通过Jasmine和Guard自动测试JavaScript 我喜欢Rails的一个原因是:他介绍了自动测试的理念给我,即一个监听你文件系统改变的文本,然后在文件发生改变时,自动运行你的单元测试. 因为单元测试通常情况下运行得很快,…
Gemfile文件添加rspec.guard和spork,之后执行bundle install命令 gem 'rb-readline' group :development, :test do # Call 'byebug' anywhere in the code to stop execution and get a debugger console gem 'byebug' #rspec gem 'rspec-rails' #guard gem 'guard-rspec' gem 'sel…
------------------教程------------- Ruby风格指南(代码规范) https://github.com/bbatsov/ruby-style-guide 笨方法學 Rubyhttp://lrthw.github.io/intro/ Ruby on Rails 實戰聖經使用 Rails 3.2 及 Ruby 1.9.3http://ihower.tw/rails3/ Helping Ruby Programmers become Awesome! http://ru…
print <<off This is the second way of creating here document ie. multiple line string; off 报错: 原因: off前面有一个空格…
个人项目第二次测试结果[9.16] 注:下表中的成绩满分为25分,正确性测试 共5个,每个3分.效率测试共 2个,每个5分. 根据数据统计分档如下, // 前为档级,后为分数. 参数为50000 0-20: 1 // 5 20-80: 2 // 2.5 80-600: 3 // 1.6 参数为1000000 0-20: 1 // 5 20-80: 2 // 2.5 100-200: 3 // 1.6 200-300: 4 // 1.25 300-600: 5 // 1 学号 -c 1 -c 5…
项目开始 一. 新建Rails项目 1. 修改一下Gemfile文件(简单修改一下) source 'https://rubygems.org' git_source(:github) { |repo| "https://github.com/#{repo}.git" } ruby '2.4.0' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '~> 5.2.3' # Us…
继续上次Ruby的学习.接下来就到了Ruby的方法. Ruby的方法与Python仍然很像.使用def定义,可以使用undef取消定义. 在Ruby中,经常可以看见方法后面跟有"?"或"!".这其实是方法名的一部分. 带有"?"表示返回一个布尔值:带有"!"表示方法会修改对象自身. 以Array类为例: empty?返回数组是否为空.相当于isEmpty. sort!表示会对数组原地排序. sort则返回一个排好序的副本,自身…
一. 哈希变量(相当于Python中的字典) 详情参看:https://www.runoob.com/ruby/ruby-hash.html 1.值得注意的 (1). 创建Hash时需注意 # 创建一个空的Hash months = Hash.new puts months print(months[1]) # 创建一个具有默认值得Hash months = Hash.new( "month" ) # 或 months = Hash.new "month" puts…
最近因为一位极光推送朋友,我开始了大概三四天的Rails学习之路,最终达到的水平是可以比较轻松地做出大部分功能,然后自我感觉可以自如地按照Rails的设计思想去思考.由于编程的日益流行,我结识了越来越多非计算机系的学生出于爱好开始写代码,但是其中的大部分人也许在用着一些错误的学习方式来学习编程,为了避免大家再继续走弯路,在这篇文章中,我会介绍下一个初学者要如何学习Rails. 1. 为何而学,目标是什么? 今天和朋友在走路时,谈到要如何学习Rails,我问的第一个问题是,你为什么要学习Rails…
原文可以参考 https://ruby-china.org/topics/17581 在window10 安装ruby rails https://rubyinstaller.org/downloads/下载 ruby版本,我是用的是最新版本2.5.2 首先安装ruby版本 一步步安装 最后 不要快安装完成时不要勾选 ridk install选项,因为从命令行下载太慢,单独下载安装2.安装编译环境  步骤:  去 http://www.mys2.org/ 下载  http://repo.msys…
Batch Normalization(简称 BN)自从提出之后,因为效果特别好,很快被作为深度学习的标准工具应用在了各种场合.BN 大法虽然好,但是也存在一些局限和问题,诸如当 BatchSize 太小时效果不佳.对 RNN 等动态网络无法有效应用 BN 等.针对 BN 的问题,最近两年又陆续有基于 BN 思想的很多改进 Normalization 模型被提出.BN 是深度学习进展中里程碑式的工作之一,无论是希望深入了解深度学习,还是在实践中解决实际问题,BN 及一系列改进 Normaliza…
来源:https://www.chainnews.com/articles/504060702149.htm 机器之心专栏 作者:张俊林 Batch Normalization (简称 BN)自从提出之后,因为效果特别好,很快被作为深度学习的标准工具应用在了各种场合.BN 大法虽然好,但是也存在一些局限和问题,诸如当 BatchSize 太小时效果不佳.对 RNN 等动态网络无法有效应用 BN 等.针对 BN 的问题,最近两年又陆续有基于 BN 思想的很多改进 Normalization 模型被…
20172311-ASL测试 2018-1938872补充博客 课程:<程序设计与数据结构> 班级: 1723 姓名: 赵晓海 学号: 20172311 实验教师:王志强老师 测试日期:2018年10月12日 必修/选修: 必修 测试内容 已知线性表具有元素{5,13,19,21,37,56,64,75,80,88,92},如果使用折半查找法,ASL是多少? (本题目2分,要求写出结题过程) 测试过程及结果 测试过程中遇到的问题和解决过程 问题1:什么是ASL 问题1解决方案:通过询问同学得知…
约定优于配置和RESTful是Ruby on Rails十分推崇的哲学.在一个默认的RESTful的Rails项目中,使用资源和HTTP动词来帮助组织项目. 假如有一个使用scaffold创建的Rails项目,它的创建代码像下面这样: rails new hello_rails cd hello_rails/ rails generate scaffold person name:string 执行之后得到的文件结构如下(原文来自Ruby on Rails 指南): app/ 存放程序的控制器.…
一.Play it again: reactivation of waking experience and memory(Trends in Neurosciences 2010) SWR发放模式不仅反映了环境,而且反映了行为,这进一步表明来自以下事实:在以后的睡眠中,访问频率较高的地方会更强烈地重新激活.结果表明,在随后的睡眠过程中,编码特定位置的细胞的发放同步性随着在先前探索期间在该位置花费的时间而增加.因此,重新激活的模式偏向访问量最大的地方. 总之,这些发现表明,与探索有关的发放模式在…
在深度学习中,当数据量不够大时候,常常采用下面4中方法: 1. 人工增加训练集的大小. 通过平移, 翻转, 加噪声等方法从已有数据中创造出一批"新"的数据.也就是Data Augmentation 2. Regularization. 数据量比较小会导致模型过拟合, 使得训练误差很小而测试误差特别大. 通过在Loss Function 后面加上正则项可以抑制过拟合的产生. 缺点是引入了一个需要手动调整的hyper-parameter. 详见 https://www.wikiwand.c…
这三个方法在ROR中经常用到,都是用来判断是否为空的. 区别是: ruby的方法:.nil?..empty? rails的方法 :.blank? 用法的区别: .nil?    :   判断对象是否存在. .empty? :   是对象已经存在,判断是否为空字段. .blank?  :   相当于同时满足 .nil? 和 .empty? . 注: Rails API中的解释是如果对象是:false, empty, 空白字符都是blank. 比如说: "", " ",…
如何快速正确的安装 Ruby, Rails 运行环境 https://ruby-china.org/wiki/install_ruby_guide 对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境.次安装方法同样适用于产品环境! 系统需求 首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用: Mac OS X 任意 Linux 发行版本(Ubuntu,CentOS…
♣Qtp是什么? ♣测试用例网站    ♦注册与登录    ♦测试脚本       ◊录制/执行测试脚本       ◊分析录制的测试脚本       ◊执行.查看测试脚本    ♦建立检查点       ◊对象检查       ◊网页检查       ◊文字检查       ◊表格检查       ◊执行并分析使用检查点的测试脚本       ♦参数化       ◊参数化对象和检查点中的值        ◊参数的种类       ◊使用数据表参数       ◊修正受到参数化影响的检查点  …
1. Dropout简介 1.1 Dropout出现的原因 在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象. 在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预测准确率较高:但是在测试数据上损失函数比较大,预测准确率较低. 过拟合是很多机器学习的通病.如果模型过拟合,那么得到的模型几乎不能用.为了解决过拟合问题,一般会采用模型集成的方法,即训练多个模型进行组合.此时,训练模型费时就成为一个很大的问题,不仅…