Rails

使用rails3.1.1建立第一个helloworld项目 让rails跑起来

99封情书 提交于 2020-01-04 03:51:27
一、回顾 在上几篇文章中,我们: 安装了railsinstaller,它包含ruby运行环境,rails框架包,SQLite3 数据库; railsinstaller中也包含了git这个版本管理工具; 额外添加了mysql的链接和调用方法包; 选择了vim作为开发的编辑器; 教你10分钟内在Windows上完成Rails开发环境的安装和配置 做好使用vim编辑器进行Ruby on Rails开发的准备 ruby gem 本地安装方法以及在windows下添加mysql.gem 本篇文章中,我们将: 建立第一个项目; 启动服务; 在浏览器中浏览这个服务; 修改视图显示的内容; 在视图中显示动态内容; 在控制器创建动态内容,并在视图中显示; 二、rails new demo。 安装了rails框架之后,我们使用它的命令行工具来创建我们的第一个项目。 1,首先,进入命令行窗口,然后进入到你希望项目文件存放的目录,如:我的是cd F:/rudy/work/ (杯具啊,ruby打错了,但是程序已经安装在这个目录下,不敢修改,怕引起其它问题)。 其次,使用 rails new demo1   来创建一个新的项目,如下图, 这样,一个rails的项目的就创建完成了。下面我们需要启动ruby on rails 的服务,才能通过浏览器产看我们的项目,有些类似iis或者apache. 三,启动服务

Rails5入门

自作多情 提交于 2020-01-04 03:50:30
更新: 2017/05/29 更新: 2017/09/07 补充对ruby自身的扩张的放置位置 配置文件位置 /config/routes.rb 最简单的定义方法 get ('hello/index', to: 'hello#index') 请求接入1时,呼出2方法 两者一样时,可以省略第二个参数 get ('hello/index') 自动配置路径 routes.rb resources: controller-name 迁移 migration 表格的生成与修改 迁移文件: 为表格的生成与修改准备的文件 位置/db/migrate/20170527032900_create_books.rb 视图控制器 controller 视图控制器位置 /app/controllers/.....rb 例子/app/controllers/sample_controller.rb P28 视图 view 视图位置 视图位置 /app/view/控制器名/方法名.rb 例子 /app/view/sample/action.html.erb 注意:后缀html.erb 视图方法 超链接 方法定义 link_to(body, url [, html_option]) 参数含义 body: 链接的文字 url: 网址(或者参数) html_option: 对《a》指定的属性 例: class:

【写给朱大虫的教程】【Ruby on Rails】【006】遵循Rails理念的快速实现

耗尽温柔 提交于 2020-01-04 03:49:59
前言: 上两节我们讲了用户的添加、登录……,这一次我们遵循Rails的理念,快速实现用户的注册、登录…… 理念: 1、少就是多 2、不要重复制造轮子 开始: 1、新建rails工程 $ rails new r2 -d=mysql 配置Gemfile文件,添加一句: gem 'devise' #devise是一个gem包 配置config/database.yml文件,修改适合自己的数据库名、用户名和密码。 $ bundle install $ rake db:create #创建数据库 解释: devise是一个开源的工程,主要用于用户的注册、登录、找回密码、session等等。所谓“不要重复制造轮子”,既然有好的工程,我们就拿来用,直接在Gemfile中作为gem包引入,方便之极。Do you want to know more? https://github.com/plataformatec/devise 2、配置devise (1)应用devise: $ rails g devise:install 输出如下: =============================================================================== Some setup you must do manually if you haven't yet: 1

git和jenkins自动化代码上线

[亡魂溺海] 提交于 2020-01-03 21:21:45
1. 介绍 什么是持续集成? 经常频繁的代码合并, 持续集成跟运维有关的工作,提供一个代码仓库,版本控制系统(备份,迁移) 什么是持续交付? 开发团队---测试团队---运维上线 开发团对,单元测试,---测试-- 代码质量检测--- 测试, sonarqube 什么是持续部署? 频繁的代码上线,持续部署 2. 持续集成 什么是版本控制系统 每一次提交或修改都看作是一个版本 版本控制系统解决了什么问题? 快速回滚到指定的版本,只保留变化的内容 常见版本控制系统svn与git区别? svn: 中心化的代码仓库 git: 分布式的代码仓库 安装和配置git #git的安装 yum install git -y git --version ​ git config --global user.name "xxxx" git config --global user.email "xxxx@qq.com" git config --global color.ui "true" 创建版本库 mkdir test cd test git init git仓库添加文件 git add . #添加文件到缓冲区 git commit -m 'add three file' git修改文件名称并提交 git mv file1 file4 git commit -m 'change file name'

刚哥谈架构 (四)- 推荐给架构师的书单

流过昼夜 提交于 2019-12-30 14:38:22
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> “回日楼台非甲帐,去时冠剑是丁年” 今天收到豆瓣的2019年的总结,发现自己已经在豆瓣渡过10个春秋。今年读了69本书,有很多书非常棒。今天我就给各位架构师,程序员,码农推荐一些我觉得对工作和职业生涯都很有帮助的书籍。 专业技术类 IT专业类的书不是我今天要推荐的重点,因为这些书大部分大家都很熟悉了,推荐一些相对比较冷门的。 Designing Data-Intensive Applications https://book.douban.com/subject/26197294/ 这本书是分布式设计的经典,讲述的非常的细致和系统,来龙去脉,由浅入深。豆瓣评分9.7可谓好评拉满。对于从事数据系统开发的架构师和程序员是必读书籍。 The Master Algorithm 终极算法 https://book.douban.com/subject/26575738/ 无论你是不是从事机器学习行业的,这本书都值得阅读。它可以帮助你梳理对机器学习诸多算法的认识,构建一个完整,系统的体系结构。中文版翻译不如英文原版。 A Philosophy of Software Design https://book.douban.com/subject/30218046/ 本书是我的同事在斯坦福的博士生导师 John

rails 5 功能新增及改变

≡放荡痞女 提交于 2019-12-24 14:07:01
1、ApplicationRecord 在Rails4中所有的模型都继承自ActiveRecord::Base,不过在Rails5中新引进了一个叫ApplicationRecord的类,存放在: app/models/application_record.rb中,所有Rails5应用都会有这个类, 它的内容非常简单: class ApplicationRecord < ActiveRecord::Base self.abstract_class = true end 就是一个继承ActiveRecord::Base的抽象类,作用就是为整个应用程序模型提供一个自己的基类 module MyModule end # Rails4.x中扩展模型的方式 ActiveRecord::Base.send :include, MyModule # Rails5 class ApplicationRecord < ActiveRecord::Base include MyModule self.abstract_class = true end 2、OR语法支持(查询语句的组合查询),Rails5中提供了对两个AR Relation对象的OR方法: > Article.where(user_id: 1).or(Article.where(user_id: 2)) => Article Load

gitlab服务器邮箱配置

余生长醉 提交于 2019-12-24 08:13:33
如想用 SMTP 代替 Sendmail 发送email,添加如下相应邮箱服务商的配置到 /etc/gitlab/gitlab.rb , 然后运行 gitlab-ctl reconfigure 使修改生效。 omnibus-gitlab还提供了 测试发送邮件功能 。 本文后面有一些常用的 SMTP配置示例 ,可以参考下。前往 QQ企业邮箱配置 gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.server" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "smtp user" gitlab_rails['smtp_password'] = "smtp password" gitlab_rails['smtp_domain'] = "example.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_openssl_verify_mode'] = 'peer' # 如果你使用的SMTP服务是默认的 'From:gitlab

gitlab搭建后邮件服务设置

♀尐吖头ヾ 提交于 2019-12-24 08:13:17
按照官网配置会有坑 官方详解邮件服务配置 1. 配置文件位置/etc/gitlab/gitlab.rb 以腾讯企业邮箱为例其它邮箱大同小异 gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.exmail.qq.com" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "邮箱地址" gitlab_rails['smtp_password'] = "password" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = true gitlab_rails['smtp_domain'] = "exmail.qq.com" gitlab_rails['gitlab_email_from'] = '邮箱地址' 端口号实际测试是465,gitlab给出的是587 2.更新配置 gitlab-ctl reconfigure (测试发现控制台调试第四步生效了,但是页面发送邮件并没有立即生效) 3.重启服务 gitlab-ctl

use mixin and autoload_paths vs eager_load_paths

孤人 提交于 2019-12-23 05:19:17
Greg Yang Developer Taipei, Taiwan 108 POSTS 35 TAGS 若要查看是否有载入请在 rails c 输入这行 ActiveSupport::Dependencies.autoload_paths OR Rails.application.config.assets.paths 即可 > rails c > ActiveSupport::Dependencies.autoload_paths [ [ 0] "/Users/app/assets", [ 1] "/Users/app/channels", [ 2] "/Users/app/controllers", [ 3] "/Users/app/controllers/concerns", [ 4] "/Users/app/helpers", [ 5] "/Users/app/jobs", [ 6] "/Users/app/mailers", [ 7] "/Users/app/models", [ 8] "/Users/app/models/concerns", [ 9] "/Users/app/uploaders", 我们需要的是载入这行 -> [10] "/Users/lib/modules", [11] "/Users/.rvm/gems/ruby-2.3.1/gems

Ruby on Rails where query with nesting relations

﹥>﹥吖頭↗ 提交于 2019-12-23 02:43:17
问题 I learned how to use where query with relations from this question. Ruby on Rails where query with relations However, I still can't make it right with this nesting case. How can I make Summaries controllers index work? Model User has_many :projects, dependent: :destroy has_many :reasons, through: :projects has_many :summaries, through: :projects, source: :reasons has_many :entries, through: :projects Project belongs_to :user has_many :reasons has_many :entries, through: :reasons Reasons