自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 clone gerrit repos 到windows本地

现在可以返回到你想clone的库里生成ssh clone命令,把命令拷贝到你想放置的Windows文件夹下就可以了。按照正常步骤下载Git Bash, 然后在Gerrit上配置你自己的SSH,结果clone的时候一直报错。按照提示生成一个它在找的密钥, 这个global的命令可以先不执行,应该也没啥问题。先点击你的账号->然后点击Settings->最后点击SSH Keys, 拷贝进去。在你的.ssh目录下找到生成的id_ed25519.pub。生成一个ed25519密钥,不需要密码就一直enter.

2025-02-11 17:50:35 242

原创 Ruby On Rails 笔记5——常用验证下

3.1 :allow_nil当验证值为nil时:allow_nil选项会跳过验证3.1 :allow_blank如果属性值为blank?,则跳过验证。3.3 :message允许指定验证失败时添加到errors集合中的消息,否则,会使用默认错误消息。Proc :message值有两个参数:正在验证的对象以及包含:model、:attribute 和 :value 键值对的hash。3.4 :onon 选项允许你指定验证发生时间。默认情况下设置的验证会在save时运行,可以

2024-12-09 18:02:47 461

原创 Ruby On Rails 笔记4——常用验证上

使用new方法实例化一个新对象时,这个对象尚未被保存到数据库中,直到对该对象调用save,它才会被保存到相应的数据库中。这些预定义验证提供了通用的验证规则,每次验证失败时,一个错误的消息会被添加进对象的errors集合中,这个error与正在验证的特殊属性相关联。验证属性是否只有数值。这个验证针对block,它没有预定义的验证函数,你应该使用block创建一个验证函数,传给validates_each的每个属性都将根据该函数进行测试。该验证器通过测试属性值是否匹配给定的正则验证,使用:with选项指定。

2024-12-09 18:01:42 1190

原创 Ruby On Rails 笔记3——表的增删改查

Rails 使用此时间戳来决定应运行哪个migration,以及运行的顺序,因此,如果要从其他应用程序复制migration或自己生成文件,请注意其在顺序中的位置,经常发生在合并代码的时候。A schema开始时什么都没有,每次migration都会对其进行修改,以添加或删除表、列或索引。如果你本地数据库和线上数据库不是完全一致,你就会发现运行完migration后schema.rb文件中也会用大量改动,这个时候你需要手动进去修改你需要的改动,把其他的改动恢复原样,然后才能提交。

2024-12-04 17:14:17 1120

原创 Ruby On Rails 笔记2——表的基本知识

原文链接自取。

2024-12-04 11:17:18 1035

原创 Ruby On Rails 笔记1——Rails 入门

突然想跟着官方文档把Ruby On Rails过一遍,把一些有用的记下来就可以一直看了,do它!注:官网是英文文档,我自己翻译了一下,不确保完全准确,只供自己学习开发使用。

2024-12-03 15:27:20 897

原创 在新cloud上启动备份数据库

3.检查一下自己的my.cnf文件,修改datadir为你的备份的文件目录,一般在/etc/my.cnf这个目录,如果找不到可以执行这个下面的命令,然后到输出来的路径里找找看。如果还是不行可以把“skip_grant_tables”加入你自己的my.cnf或者类似的文件里,就是包含datadir路径的文件,然后重启就可以免密登进mysql>了。然后用你之前的用户名密码就可以登录了,如果不能登录又不知道密码可以试试“--skip-grant-tables”方式,这样开启服务。你会找到一个类似这样的文件。

2024-05-24 15:03:07 453

原创 在Ubuntu 22.04上安装配置VNC实现可视化

接下来有点不一样了, 注意在你安装了VNC客户端的本地环境上比如电脑执行这条命令(比如我用的是VNC Viewer), 我是Windows系统,所以打开cmd执行下面这条命名 your_user_name就换成你Ubuntu上的账户,不能用root账户,your_server_id就是你Ubuntu的IP地址的。我用的是Putty, 在你的的your_server_id上切换成your_user_name, 然后右击Change Settings打开一个界面,这样配置一下,点Add->Apply.

2024-04-19 16:49:27 1344

原创 Ruby CanCanCan 动态定义方法

上面是原文出处,实际使用的时候还是不方便,我改成这样了(非一比一还原)。经测试嘎嘎好用,就是我还需要添加一些条件筛选,导致我这个不能用,得删掉,有点可惜,记录一下~如果权限不多,我们可以通过这种方式来定义。

2024-03-07 16:29:20 554 1

原创 Ubuntu 上升级nodejs 版本

代码版本一直升级,需要升级nodejs的版本收到的错误信息:开整,查看我当前的node版本删掉旧版本项目里面用到的是node v18, 咱也准备升级到v18, 网上找了一圈,发现在linux上升级用NVM(Node Version Manager)最方便,

2024-01-12 16:57:21 1558

原创 Linux 上Redis 升级

意味着我需要升级redis-server。网上找到这个解决方式。

2023-12-19 14:18:02 578

原创 Ruby 里表的增删改查

重命名Text字段为Integer(不建议修改数据类型,耗时较长,建议删除再新建)添加boolean(tinyint)字段。添加Integer字段。删除string 字段。添加string字段。

2023-09-14 17:57:46 357

原创 写前端如何轻松获取element

3. 点击Copy selector 就可以得到它的具体位置了,比如,其它的功能也可以试试 Good Luck!背景:写html的时候有时候想获取一个元素,但是它没有ID,这个时候怎么拿呢?1.鼠标移到你想选的元素附件右击,点击Inspect。我用的Chrome浏览器,不同浏览器可能有细微差别。2.移到你想要的元素上右击,点Copy。

2023-04-24 15:40:59 402 1

原创 Ruby On Rails实用方法

【代码】Ruby On Rails实用方法。

2023-03-28 14:45:35 169

转载 Sidekiq 如何处理异步任务

Sidekiq 是 Ruby 和 Rails 项目中常用的后台任务处理系统,其本身提供的 API 十分简洁,源代码也非常易于阅读,是一个轻量级的异步处理组件;虽然其本身没有提供太多复杂的功能,但是它的使用和部署非常简单。在这篇文章中,我们将对 Sidekiq 的实现原理进行介绍和分析。

2023-01-31 11:02:25 590

原创 如何停用Sidekiq Uniqueness

你有一些Sidekiq的job,并且设置了unique_for,然后系统崩溃了,在你的redis里仍然有这个唯一性的锁,但是job却不见了,导致后面的job也进不来,这个时候需要手动disable这个唯一锁。

2023-01-04 11:02:18 342

原创 安装Jenkins并在ruby中访问

安装Jenkins并在ruby中访问

2022-11-24 14:44:45 742

原创 Tmux的简介和使用

参考链接:​​​​​​https://linuxize.com/post/getting-started-with-tmux/https://linuxize.com/post/getting-started-with-tmux/不知道大家有没有使用过‘screen’,如果你使用过,那么你也会喜欢Tmux,两种类似的功能。使用Tmux有个最大的好处是它的会话是持久的,即使你被断开连接,在Tmux中运行的程序将继续运行。1. 安装Tmux在ubuntu和Debian上安装Tmux:sud

2022-05-30 16:31:33 340

原创 Ruby中好用的判断true/false的类

直观感受一下:2.6.5 :001 > a="0" => "0"2.6.5 :002 > ActiveModel::Type::Boolean.new.cast(a) => false2.6.5 :003 > ActiveModel::Type::Boolean.new.cast(a) ? "yes" : "no" => "no"2.6.5 :004 > a="f" => "f"2.6.5 :005 > ActiveModel::T

2022-05-11 11:12:54 471

原创 check_box_tag 如何做到被选中返回1,未选中返回0

背景介绍:首先由于某种原因不能使用check_box,只能使用check_box_tag,check_box_tag 有个属性value, 如果写“1”那就在选中后返回1,如果没有选择就啥也没有了,那么如何实现选中返回1,没选择返回0呢?首先check_box是可以做到的,我们可以看看它是啥check_box (ActionView::Helpers::FormHelper) - APIdockhttps://apidock.com/rails/ActionView/Helpers/FormHelp

2022-05-07 17:13:44 857

原创 给某条audit添加comment

背景介绍:项目在ruby里配置audits用于记录一些改动,详见https://github.com/collectiveidea/audited#auditedhttps://github.com/collectiveidea/audited#audited前端有个按钮经常被启用/禁用,可以通过audit查看每次谁做了修改,但是没有原因,想知道谁为什么要这样做还需要找到那个人问,这个时候需要添加一个弹窗,每次点那个按钮的时候弹出来,让你写下原因。——————————————————————————

2022-04-28 15:38:04 854

原创 如何让dropdown一直显示

这是一个dropdown-menu,如果我点了某条, 它就会消失 ,例如 如果我点了"Remove from Compare", 这个下拉就会消失,然后你需要再次点击 'Build Comparision'。但是我操作还没有完成呢,要怎么让这个下拉列表一直保持不动,而不是点了其中某个条目就消失掉了?可以使用"stop propagation"例如:<ul class="dropdown-menu keep-open-on-click">$(document).on('cl

2022-04-22 16:41:56 1286

原创 Ruby中使用dependent: :delete_all的小陷阱

在Ruby中关联删除很好用:例如在build.rb文件定义 has_many :ecl_baselines, dependent: :delete_all当删除该build时,就会关联删除那些将build_id设置为当前删除的build的ecl_baselines。例如:=> #<EclBaseline id: 1238812, build_id: 5858767, ecl_build_id: 5857117, created_at: "2021-08-02 05:31:24.0

2022-04-22 15:54:01 514

原创 为什么同一个ruby文件中无法传送变量

背景介绍:定义了一个/root/haiyu/jenkins.rb 文件,用来控制jenkins的相关操作,其中定义了两个方法:_prepare_start和_run在_prepare_start里定义了一个变量 @testu,并且可以保证_prepare_start会运行在_run之前,但是在_run里面怎么也得不到@testu。原因很简单,但是有时候很容易忽略。略记一下,谨防犯傻的你~in /haiyu/jenkins.rb 29: 30: def _prepare_star

2022-04-22 15:25:11 747

原创 使用JenkinsApi::Client获取Folder下的job

一般来说使用JenkinsAPI可以通过点击右下角的Rest API 就可以了REST APIMany objects of Jenkins provide the remote access API. They are available at/.../api/where "..." portion is the object for which you'd like to access.XML APIAccess data exposed inHTMLas XML for mac...

2022-04-21 13:19:22 1348

原创 在Ruby上使用sidekiq实现定时任务

背景介绍:本实现基于sidekiq已经正常安装并且已经在项目里使用了,只记录一下怎么启动运行。代码采用Ruby实现,功能是在前端调用Jenkins job,具体的Jenkins调用方法不做深入描述。具体可以参考Home · mperham/sidekiq Wiki · GitHubhttps://github.com/mperham/sidekiq/wiki功能展示:前端状态会随着调用的Jenkins job的状态自动更改代码实现:#1. config/initializers/.

2022-04-08 10:39:19 546

原创 在Ubuntu 18.04上安装配置VNC实现Spinach测试可视化

背景介绍:写Ruby时候有些前端信息需要测试,可以使用Spinach测试,但是运行起来后看不见前端页面的实际变化情况。所以安装配置VNC来实现可视化。首先查看一下自己的系统:(看到我是Ubuntu 18.04)# lsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescription: Ubuntu 18.04.3 LTSRelease: 18.04Codename: bio

2022-02-24 17:52:43 961

翻译 RSpec 实例详解(译)

原文链接:https://www.rubyguides.com/2018/07/rspec-tutorial/你想学习如何使用RSpec为Ruby应用程序编写测试用例吗?那你来对地方了!在本教程中,我将想你展示如何去做。一、为什么要编写测试用例?它建立了一个防止错误的安全网,如果你没有完善的测试系统,你不敢轻易修改代码,因为可能会破坏一些东西;它会提升你的自信心;它能帮助你记录代码,你的测试描述了程序功能;它可以给你反馈,它可以确保代码产生预期的结果。如果你想写一些复杂的

2021-01-13 15:11:59 830

原创 VScode 使用SSH远程开发Ruby

背景介绍:一开始使用Sublime Text3本地开发ruby代码,然后在Linux上启动,使用byebug调试。后来因为Sublime收费,不得不换个免费版本,就找到了VScode,并且它还支持SSH远程开发下载安装VScode官网教程可以参考一下Remote Development using SSH一,SSH环境搭建1.1 安装SSH 服务器端和客户端,确保两个机器可以链接我本地是Win10, 安装OpenSSH Client(系统自带了),linux上也没有特别安装server

2020-11-19 14:31:01 705

原创 手把手学ROR四——代码调试

写代码,调试是必不可少的,对于ROR,网上很多调试方法,官方传送门1. debugger 首先讲一下比较火的 debugger,中文使用方法献上如果你的Ruby版本比较低,那还是可以使用的,这里说2.x的版本已经不支持debugger了。“Ruby 2.x is not supported by thedebuggergem and you should usebyebuginstead.”官网可以看到我们可以使用byebug。首先安装一下,执行命令gem install...

2020-06-09 15:36:14 350

原创 springboot中注入失败原因一

做task的时候遇到这样的报错:springboot框架No qualifying bean of type [com.scm.xxxxx] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotation...

2020-06-05 10:24:20 547

原创 前端输入适配

功能说明:在前端页面的一个输入框中,输入某个字符,下拉框中就出现对应字符的相关选项,选中某一个之后,会自动添加“;”隔开,并且支持多次输入。代码实现(主要讲前端代码):1.引入前端JS文件,最后两个一定需要的,前面的根据项目需要添加。&lt;link rel="stylesheet" href="js/jquery-confirm/dist/jquery-confirm.min....

2020-06-05 10:22:34 200

原创 手把手学ROR三——Rails的代码方式

上篇文章中说到可以在public里面写脚本执行,我们可以把一切文件都放进public里面,但是就失去了架构感了。我们用ROR的方式怎么写?文件中的各项文件主要功能大家可以参考这里:传送门官方文档可以参考这里:走起~ 什么是Rails的方式 如图所示,一个请求进来后,首先由路由部分的代码分发给相应的controller,controller去选择相应的模板文件,最终相应这次请求。数据处理部分的代码可以放在model中,处理后的数据可以传递给controller。 2. 将我们的.

2020-06-02 19:03:04 458

原创 手把手学ROR二——创建一个 rails项目

上一篇文章中搭建好了ruby on rails 的Linux环境,代码编写工具看个人喜欢。是用IDE还是使用VIM 都是可以的。今天这边记录一下如何创建一个新的项目,官方步骤可以参考here1.在工作目录下执行,新建一个ROR的空工程 rails new meetup -d mysql执行可能会报错,提示你没有装xxx,点进去log里面查看,看看缺啥装啥装好之后可以进去meetup 文件中使用命令 “vim Gemfile”查看文件,里面是项目用到的一些包2.执行命令ra..

2020-06-01 16:50:00 399

原创 手把手学ROR一——Ruby on Rails在Linux上的环境搭建

第一次接触Ruby on Rails, mark一下1.准备好自己的环境。我是直接在cloud上划拉了一块地方,用的Ubuntu的系统。root@haiyu-personal:~# uname -aLinux haiyu-personal 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux2.安装ruby2.1 设置代理。我的机器需要设置代理,在文件下

2020-06-01 10:06:50 789 1

原创 通过Tunnels连上不同域的数据库

场景是这样的:大鱼在中国,她的电脑是内存4G, 用了一年发现不够用,于是她申请了一台远程电脑,可能这台电脑在芬兰,这台电脑的IP是10.135.157.161,她想访问安装在10.157.167.185上的数据库,发现访问不了,通过抓包发现3306端口有问题。如下图。于是她想了一个办法:1.连接这台远程电脑,安装putty, 打开SSH--Tunnels配置想要访问的地址和端口,点Ad...

2019-11-06 14:31:49 361

原创 数据库——常用存储引擎

锁:主要作用是管理共享资源的并发访问,还可以用于实现事务的隔离性。锁的类型:    共享锁(也称读锁)    独占锁(也称写锁)阻塞:一个事务中的锁需要等待另一个事务中的锁释放所占用的资源,这样会形成阻塞。死锁:两个及以上事务在执行过程中相互占用了对方等待的资源而产生的异常数据库系统会在死锁的事务中,找到一个占用资源最少的事务进行回滚操作,从而自动解决死锁。 MyI...

2018-11-29 13:01:10 346

原创 数据库——大表和大事物带来的问题

一般情况下(非只记录日志等)大表指:    1.记录行数单表超过千万行    2.表数据文件超过10G大表的影响:   1.慢查询   2.建立索引需要很长的时间:可能引起锁表或主从延迟   3.修改表结构需要长时间锁表:主从延迟; 影响正常的数据操作如何处理大表:  1.分库分表(不好操作):选择合适的分表主键;如何处理分表后跨分区数据的查询和统计  2.历史...

2018-11-28 13:25:53 838

原创 LeetCode刷题(Java)——5.Reverse Words in a String

Given an input string, reverse the string word by word.Example:  Input: "the sky is blue",Output: "blue is sky the".Note:A word is defined as a sequence of non-space characters. Input stri...

2018-07-23 22:17:18 252

原创 LeetCode刷题(Java)——4.Implement strstr()

Return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.Example 1:Input: haystack = "hello", needle = "ll"Output: 2Example 2:Input: haystack...

2018-07-17 20:29:03 327

空空如也

空空如也

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

TA关注的人

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