ruby on rails

2024/4/12 2:14:41

Discourse Math 插件

概述Discourse Math 使用 MathJax (默认) 或者 KaTeX 来让你在你的 Discourse 中使用数学公式。 仓库链接GitHub - discourse/discourse-math: Official MathJax support for Discourse Install Guide如何在 Discourse 中安装插件 这个插件是 Discourse 官方提供的插件&#x…

[ruby on rails] ruby使用vscode做开发

ruby LSP实现 ruby插件推荐用这个来实现,但是现在这个在加载文件索引时候,特别慢,时好时坏,所以现在推荐用Solargraph实现 ruby LSP要求ruby版本3以上,如果在旧版本中使用,需要指定bundleGemfile路径 旧版…

將Redmine架在sub-URI

將Redmine架在sub-URI參考HowTo Install Redmine in a sub-URI及Defect #32318,在config/environment.rb檔案的最底下加上: ActionController::Base.relative_url_root RedmineApp::Application.routes.default_scope Redmine::Utils::relative_url_ro…

Windows下安装Redmine 2.5.2不完全指南

我决定在项目中引入Redmine来管理开发任务和计划,至于Redmine的好处,请问度娘或者脑补一下。互联网搜索到的,基本上都是旧版本的, 1.2.1 的最多,我要新的啊,所以只好自己来啦。本文主体参考 Redmine Wiki 的…

Redmine plugin redmine_2fa安裝

Redmine plugin redmine_2fa安裝 前言安裝步驟安裝redis安裝redmine_sidekiq安裝redmine_bots安裝redmine_2faTroubleshootingNoMethodError (undefined method tr for nil:NilClass使用方式重設2fa otp secret key)前言 redmine_2fa是redmine的一個plugin,提供了登…

[ruby on rails] passenger+nginx 部署rails

安装Passenger 方法1 Passenger 是一个 app server,支持基于 Rack 框架的 Ruby app(包括 Rails),作为模块变异到Nginx,不需要自己启动。 安装 Passenger 最简单的方法是通过 apt 安装,首先导入 Passenger…

ROR之.nil? .empty? .blank?的用法

1、出处 Ruby的方法:.nil?、.empty? Rails的方法:.blank? 2、意义: .nil? 判断对象是否存在; .empty? 对象已经存在,判断是否为空字段 .blank? 相当于同时满足.nil?和.empty? 注:Rails API中…

Ruby On Rails集成Bootstrap的方法

Ruby On Rails安装Bootstrap步骤记录 使用Bootstrap进行前端开发有以下优势安装bootstrap前的相关配置使用命令安装所需的依赖包验证安装 使用Bootstrap进行前端开发有以下优势 响应式设计:Bootstrap提供了强大的响应式网格系统,能够让网站在不同设备上…

ActiveRecord::Migration.maintain_test_schema!

测试gem: rspec-rails 问题描述 在使用 rspec-rails 进行测试时,出现了以下错误 ActiveRecord::StatementInvalid: UndefinedFunction: ERROR: function init_id() does not exist这个错误与数据库架构有关。 schema.rb中 create_table "users…

在 Ubuntu 14.04 上使用 Capistrano、Nginx 和 Puma 部署 Rails 应用

简介 Rails 是一个用 Ruby 编写的开源 Web 应用程序框架。它遵循“约定优于配置”的理念,通过假设有一种“最佳”做事方式,让你在不必浏览无尽的配置文件的情况下编写更少的代码,同时实现更多功能。 Nginx 是一个高性能的 HTTP 服务器、反向…

墨者学院 Ruby On Rails漏洞复现第一题(CVE-2018-3760)

打开 web 页面: 发现是Ruby,在Ruby 3.7.1和更低版本中,存在由辅助解码引起的路径遍历漏洞。攻击者可以使用%252e%252e/访问根目录并读取或执行目标服务器上的任何文件。可以先检测一下是否有此漏洞: /assets/file:%2f%2f/etc/pas…

Discourse 的用户快速找到管理员账号

在 Discourse 的社区中可能有多个用户账号为管理员或者有特殊权限的账号。 这个账号在 Discourse 的用户,然后 Staff 中可以快速找到。 作为管理员,有时候需要检查下你的 Discourse 是不是没有进行管理,有多长时间没有登录了。 ​编辑 这个…

[ruby on rails]rack-cors, rack-attack

gem rack-attack gem rack-cors1. rack-attack 可以根据ip、域名等设置黑名单、设置访问频率 设置黑名单 # 新增 config/initializers/rack_attack.rb # 请求referer如果匹配不上设置的allowed_origins,返回403 forbidden Rack::Attack.blocklist(block bad domai…

[ruby on rails]MD5、SHA1、SHA256、Base64、aes-128-cbc、aes-256-ecb

md5 puts Digest::MD5.hexdigest(admin) sha1 require digest/sha1 puts Digest::SHA1.hexdigest(admin)base64 require base64 code Base64.encode64(admin) source Base64.decode64(code)aes-128-cbc # base64 解密数据 session_key Base64.decode64(session_ke…

[ruby on rails] postgres sql explain 优化

一、查看执行计划 sql User.all.to_sql # 不会实际执行查询 puts ActiveRecord::Base.connection.explain(sql)# 会实际执行查询,再列出计划 User.all.explain# 会实际执行查询,再列出计划ActiveRecord::Base.connection.execute(EXPLAIN ANALYZE sql…

框架分析(6)-Ruby on Rails

框架分析(6)-Ruby on Rails 专栏介绍Ruby on Rails核心概念以及组件讲解MVC架构模式约定优于配置强大的ORM支持自动化测试丰富的插件生态系统RESTful路由安全性总结 优缺点优点快速开发简单易学MVC架构强大的ORM支持大量的插件和Gem支持 缺点性能问题学习…

亚马逊云科技如何通过四大自研芯片助力企业创新,摆脱基础架构束缚

2023年6月27-28日,2023亚马逊云科技中国峰会在上海顺利举行。在此次峰会上我们可以清晰地看到为什么亚马逊云科技可以做到领先地位,为什么亚马逊云科技可以一直保持进步。这都与亚马逊云科技“基于客户需求,快速进行产品更新与技术迭代”的Da…

Ruby CanCanCan 动态定义方法

灵感来自这里https://github.com/kristianmandrup/cantango/wiki/CanCan-vs-CanTango 如果权限不多,我们可以通过这种方式来定义 class CanCan::Abilitydef initialize user, options {}if !usercan :read, :allendif useradmin_rules if user.roles.include? :…

rails 常量自动加载和重新加载机制

在Rails中,有一个称为"常量自动加载和重新加载机制"的功能,它使得在开发和生产环境中能够自动加载和重新加载类和模块。这个机制允许您不必手动管理类的加载,使得开发更加方便。 快乐学习: 自动加载、重新加载 自动加…

创建和认识Ruby On Rails控制器

创建和认识Ruby On Rails控制器 我们都知道Ruby On Rails是一个MVC结构的框架。必然他的控制器,视图,数据都是分开的,我们将对他们进行分解,逐个了解他们。首先我们使用命令先创建一个控制器: 注意:控制器名…

配置Redmine的邮件通知功能

根据《Windows下安装Redmine 2.5.2不完全指南 》一文,我们搭建基本的 Redmine 平台,现在是时候做进一步的配置了。作为一个项目管理平台,必须能够通知项目成员有关项目和任务的各种状态变化。这也是一种典型的观察者模式。开发人员可以跟踪某…

记录一下我的Ruby On Rails的systemd服务脚本

自己也是一个 ROR 框架的学习者,同时也是 Ruby 的新手。对于如何让 ROR 应用随系统自动启动并不是很了解。在尝试了各种方法之后,我最终找到了一条可行的途径。虽然不确定是否完全正确,但服务已经成功启动了。因此,我决定在这里保…

[ruby on rails] concerns的使用

concern是用来把公共的方法提取到一起,保持代码DRY,是用module来实现的 model中的concern module Visibleextend ActiveSupport::ConcernVALID_STATUSES [public, private, archived] # 其他地方引用 Visible::VALID_STATUSES# 关联关系 blongs_to,…

[ruby on rails] array、jsonb字段添加查询

一、jsonb # 新增 add_column :shi_tis, :setting, :jsonb, default: {}# string转jsonb def changechange_column :users, :setting, :jsonb, using: setting::jsonb, default: {} end# 加索引 add_index :users, :setting, using: :gin # 这样就为setting jsonb字段创建了一…

PG::UndefinedObject: ERROR: operator class “pgroonga_text_term_search_ops“ does not exist for acces

PG::UndefinedObject: ERROR: operator class "pgroonga_text_term_search_ops" does not exist for access method "pgroonga"前言錯誤訊息解決方式發生原因參考連結前言 筆者的環境如下: Ubuntu 20.04ruby 2.7.0p0 (2019-12-25 revision 64…

[ruby on rails] docker

docker安装 ubuntu14.04后自带docker安装包,可以直接安装 sudo apt-get updatesudo apt-get install -y docker.io# 安装后启动sudo service docker start查看docker信息 docker infodocker命令 sudo service docker start sudo service docker stop sudo servic…

来看看 Discourse 3.2.0.beta2 版本添加的新功能

3.2.0.beta2 版本是在 2023-10-16 发布的,根据官方的说法,主要添加了 3 个新功能。 官方的发布日志页面:3.2.0.beta2: Auto delete unused tags, custom date range for reports, new chat notifications, and more - announcements - Disco…

[ruby on rails] array、jsonb字段

一、jsonb # 新增 add_column :shi_tis, :setting, :jsonb, default: {}# string转jsonb def changechange_column :users, :setting, :jsonb, using: setting::jsonb, default: {} end# 加索引 add_index :users, :setting, using: :gin # 这样就为setting jsonb字段创建了一…