
ruby on rails
酷酷的马
我是一名ruby开发工程师,平常喜欢发一下常见的问题,和使用的技巧
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
如何在 CarrierWave 中动态配置文件名(filename)
本文介绍了如何在CarrierWave中自定义上传文件的命名策略。通过重写Uploader类的filename方法,可以实现使用UUID作为文件名以避免冲突。关键点包括:1)使用实例变量缓存生成的文件名;2)仅在文件变更时重新生成;3)保留默认行为作为后备方案。还提供了扩展存储路径和文件扩展名的建议,并提示了注意事项。这种方法既保证了文件名的唯一性,又兼顾了系统性能,为构建安全的文件上传功能提供了灵活解决方案。原创 2025-06-20 09:32:30 · 601 阅读 · 0 评论 -
ruby on rails 处理自关联的查询问题
一种可能的解决方案是使用递归CTE(Common Table Expressions),这是一种高级的SQL技术,可用于递归查询。一种更好的方式是使用递归查询,这种方式只需要在数据库中执行一次查询,就可以获取所有的关联记录。不过可以尝试在数据库中添加索引来加快查询速度,或者考虑使用缓存来优化查询。另外,如果这个查询是在后台执行的,也可以将其放入后台任务中,使用异步方式执行,避免阻塞主线程。2.如果数据量很大,这个方案确实会影响性能,因为它需要在数据库中执行多次查询,而且在每次迭代中都会进行一次连接操作。原创 2023-03-30 16:52:55 · 317 阅读 · 1 评论 -
Ruby on Rails 生成PDF
ruby on rails 使用 pdfkit 导出生成PDF文件,处理PDF乱码黑框问题原创 2023-02-21 00:31:02 · 321 阅读 · 0 评论 -
解决 libv8 安装失败问题、therubyracer 安装失败问题(CenterOS、MAC、ubuntu)
向上方的报错、或者是 提示我runing gem install libv8 --source…therubyracer -v ‘0.12.3’ – --with-v8-dir=…国内百度了一下,除了删除gem 缓存就没有其他解决方案了,这很不好。1.在安装 gem ‘therubyracer’ 报错了。方案1.我的解决方案 macOS 10.15 系统。按照自带提示安装了一下、没好用。我这里归档了一些解决方案。这里使用你自己的版本号。首先是libv8报错。............原创 2022-08-29 14:14:27 · 1525 阅读 · 0 评论 -
Ruby on rails 发送邮件的Smtp配置---163邮箱 、通用配置
ruby on rails 发送邮件 smtp配置信息整理,官方怎么给的你对照就行了 ,我这个是封装到文件里了。要是改的话 自己找一下对应的参数。一些其他邮箱基本配置整理了一下。原创 2022-08-22 09:58:05 · 1789 阅读 · 0 评论 -
textarea标签元素 在 html中如何显示-很简单
1.假设你的div中包含了由textarea 存储到数据库中,并且取出的值。在html中 需要和textarea显示一个效果。2.html中识别的/n不是换行 但是textarea中识别的是换行,只需进行替换。// 这里要append进去是关键,如果直接替换的话 html只会识别是字符串。原创 2022-07-22 09:31:52 · 3044 阅读 · 0 评论 -
ruby on rails 获取所有controller、action、权限开发
1.预先加载一下,因为是惰性的2.获取所有controller3.获取所有action原创 2022-06-29 19:32:22 · 314 阅读 · 0 评论 -
redmine 项目管理系统的数据表结构、关联关系 详细介绍
可以免费下载: 0 C币1.分享一个redmine的表结构和字段详解的一个免费的资料,共大家学习一下,如果需要源文件可以联系我,哪里有错误也可以跟我沟通!https://download.csdn.net/download/weixin_42800181/85441991?spm=1001.2014.3001.5501.........原创 2022-05-24 09:55:00 · 772 阅读 · 4 评论 -
ruby on rails 企业微信接收服务器回调 配置回调服务器
ruby on rails 企业微信回调配置原创 2021-12-29 09:21:24 · 819 阅读 · 0 评论 -
sidekiq 取消执行中的任务,ActiveJob 解决重试问题
ruby on rails 使用gem sidekiq,执行中的任务 在sidekiq的任务中很难取消,解决此方法由以下方法:暴力方法:# 此方法会重新设置redis的key,将会会进入到失败队列# “cancelled-”是你的sidekiq中redis的命令空间 例如 sidekiq:status: => 例如 Sidekiq.redis {|c| c.set("sidekiq:status:#{jid}", "123456") }Sidekiq.redis {|c| c.set("原创 2021-10-26 13:18:52 · 604 阅读 · 0 评论 -
ruby on rails 分页gem kaminari,指定页码跳转
function skip_page(type){ $('.pagination').css('display', 'flex'); $('.pagination').append("<div style='display: flex;'><input class='skip_value' type='text' style='width: 60px ;height: 30px; font-size: 14px;' placeholder='页码'> <div clas原创 2021-06-11 17:15:21 · 373 阅读 · 1 评论 -
ruby on rails 使用gem ‘kindeditor‘ 富文本本地上传图片失效问题
使用ajax的方式,渲染局部视图,js初始化富文本,导致本地上传图片不会带有域名饿的url1.官网的方案1:# coffeescript code $(document).on 'turbolinks:before-cache', -> KindEditor.remove('.rails_kindeditor') $(document).on 'turbolinks:load', -> $('.rails_kindeditor').each ->原创 2021-05-23 14:52:09 · 283 阅读 · 0 评论 -
ruby on rails 重写confirm方法 修改confirm样式
1.找了很多办法,ruby on rails 是调用原生confirm的方法进行处理,但是为了修改样式,只能在confirm之前修改js的方法实现,而不是修改原生的confirm<%= link_to [:admin, contact], method: :delete, data: { confirm:‘确定删除吗? 注意此操作无法撤销!’ }, class: “label label-danger” do -%>删除<% end %>原来的样式:现在的样式:js原创 2021-05-17 13:18:13 · 672 阅读 · 1 评论 -
ruby-on-rails – 如何使用Turbolinks刷新页面 window.reload.href替代
据我所知,我可以在 Turbolinks 5上调用以下代码,但它会更改滚动位置.有没有办法调用Turbolinks来刷新页面而不是更改滚动位置?Turbolinks.visit(location.toString());这将做我想要的,但希望使用Turbolinkswindow.location.reload()在调用visit之前存储当前滚动位置,然后在页面加载时滚动到该存储位置.将存储的滚动位置重置为null可确保后续页面加载不会滚动到旧位置.一种可能的实现可能是:var reload转载 2021-05-14 15:32:04 · 223 阅读 · 0 评论 -
ruby on rails hash删除key值以及value值,删除多个key
1.单个删除delete方法例如:[1] pry(main)> hash = {a: 1, b: 2, c: 3}=> {:a=>1, :b=>2, :c=>3}[2] pry(main)> hash.delete(:a)=> 1[3] pry(main)> hash=> {:b=>2, :c=>3}[4] pry(main)>2.删除多个key 这里我用了delete_if 方法;delete_if原创 2021-05-06 09:27:33 · 865 阅读 · 0 评论 -
ruby on rails 使用 gem ransack 综合搜索查询条件为 空值或其他值
使用方法如下:Grouping queries by OR instead of AND The default AND grouping can bechanged to OR by adding m: ‘or’ to the query hash.You can easily try it in your controller code by changing params[:q]in the index action to params[:q].try(:merge, m: ‘or’) as原创 2021-04-29 15:31:50 · 422 阅读 · 0 评论 -
Ruby 如何实现爬虫抓取
Ruby中实现网页抓取,一般用的是mechanize,使用非常简单。安装sudo gem install mechanize抓取网页require ‘rubygems’ require ‘mechanize’ agent = Mechanize.new page =agent.get(‘http://google.com/’)模拟点击事件page = agent.page.link_with(:text => ‘News’).click模拟表单提交google_form转载 2021-04-06 13:24:33 · 771 阅读 · 0 评论