好友改个昵称 1024,点个赞
1024 赞
Ruby 支持五种类型的变量。
一般小写字母、下划线开头:变量(Variable)。
$开头:全局变量(Global variable)。
@开头:实例变量(Instance variable)。
@@开头:类变量(Class variable)类变量被共享在整个继承链中
大写字母开头:常数(Constant)。
类的 object_id 在运行过程中是始终一致的
翻了下 webbrick 的源码,他自身定义了挺多常用变量了,可以参考
https://github.com/ruby/webrick/blob/master/lib/webrick/httprequest.rb
可以使用其他方法,
比如你代码的调用链是 A -> B -> C ,想在 B 中使用 无障碍使用 req,
则可以自己稍微调整下调用链,在 A -> B 之间插入 before_B 方法来处理 req=的赋值功能,变成 A -> before_B -> B -> C
元编程或者 Rack 中间件应该是有这种 API 的。
attr_accessor
宏是一个魔法,
attr_accessor req
会给你定义 写入req=
以及 读取this.req
方法,
实际上你已经在后续代码使用了,而你在调用self.request
时并未先写入req
的值,所以打印出来是nil
,
把req
想象成一个小柜子的话,你没有事先存放物品在里面,所以你从柜子里拿不到任何东西
不确定的时候可以利用 Ruby 的 API 协助判断, 比如 #object_id
不同的
搜索到一篇文章,希望有启发 https://www.dazhuanlan.com/klesh/topics/1479337
元编程是利用元数据编程,编程语言元数据是描述语言自身的,通过增加、修改、删除元数据达到对语言能力的拓展。
建议阅读 Rails guide 中文 Rails Guide 最新版本 Rails Guide
没看出异常,默认分页 25 个 post,渲染 25 次 post 的片段 json 应该是正常的。
nokogiri 支持 xpath "selector/parent"
mark
哇哦
因为 Matz 好,所以我们好。
Matz is Nice So We Are Nice
提供一个可能引起变化的思考,你在代码调用时省略圆括号,这里 Ruby 在调用时解析应该是出现了和你理解不一致的行为。 括号加上再试下?
@issue_develop_action.safe_attributes=(issue_attributes, User.current, type)
感受么,我个人偏向实用,第一次接触 Rails 就惊:“怎么有这么方便的开发技术!”,当时接触的 java 框架脚手架不多,所有的开发几乎是基于 springboot 1.6 从零开始配置集成。对比 Rails,已经有了 web 开发方向非常多的社区工具,可以非常方便的完成常见需求。
多好的工作机会啊。
愿天下所有使用 Ruby 的公司都发财。
MRGA
原来 MRGA 是 Make Ruby/Rails Great Again +1
谢谢你的回答,你说的这个我还真尝试过 sleep(5),不过没有解决。怀疑是软件包自己的缓存没有管理好,但是搜遍了 Imagick 社区都没找到合适的回答,我都要开始乱投医了。
有时候试了很多种方法反复安装都不生效时,你应该尝试重启下电脑。—— 来自一个浪费了 4 个小时可怜虫
https://nokogiri.org/tutorials/installing_nokogiri.html#mac_os_x
“姐妹语言(Elixir、Rust、Go...)”,说的应该是 Ruby 和 Rust 是姐妹语言,Ruby 和 Go 是姐妹语言