这应该是项目自己定义的方法,搜索 def calculate
。
都叫你看 SQL 了。
执行的上下文是什么,model 里吗?
延迟执行,ActiveRecord Query 只有在取值的时候才真正执行,所以在终端里拆开执行是不等价的,因为打印的时候取值了。
User.where(state: 5).last
这个查询生成的 SQL 只会查询一条记录,并不会把所有记录都读出来再拿最后一条。
因为几年前 Ruby 处于鄙视链顶端,现在新欢胜旧人,你就想大家跟你一起鄙视 Ruby。
非风动,非幡动,仁者心动。
User.order(id: :desc).find_by(state: 5)
这贴暴露了楼主 SQL 基础薄弱,到终端看看这三条语句生成的 SQL 有什么不同。
之前没触及这块接口,提醒一点是如果是看 URL 带 openapi 的文档,需要看 openapi 分支的代码。
楼上的几位推荐小众语言的牛人,我完全相信你们在新的编程环境如鱼得水,解决了在 Rails 没有解决的问题。并且我也深有体会:现存 Rails 项目良莠不齐,在遗留项目的代码看得要吐的时候,真的会产生换个语言重写一遍的冲动——实际上不是 Rails 造成这种问题,而是用 Rails 的人有问题,换一个更小众的语言就可以大大提高门槛,把不称职的工程师挡在外面。
但是和你们不同,我最终没有选择这条路,因为 Rails 本身没有成为我的瓶颈。经过几年锻炼,我终于把 Rails 用至炉火纯青,我可以用它满足大部分 Web 开发,为什么要这个时候扔掉趁手工具,重新打造轮子?既然是用的人不对,那么我来解决人的问题——对其再教育。我维护的不是一个几个月就能交付脱身的项目,而是关乎公司命运的核心服务,转用更小众的语言把别人挡在外面会造成人才脱节,导致更大的风险。
当然,我闲暇时候也会学些新语言,取长补短。但我发现一个问题,这些新语言新框架老想从 Rails 挖人,但是却挖不对重点。我引用一篇文章 Why Hanami will never unseat Rails,把转换 Rails 程序员作为第一宣传手段是没有前途的。
Rails 的崛起是因为它创造了一个生态、一门理念,理念是跨越语言的,Rails 当年不仅是转化了 Java、.Net、PHP 的程序员,而是转化了整个 Web 开发领域,在 Rails 之后几乎所有 Web 框架都长得像 Rails。那么向 Ruby on Rails 发起挑战的语言/框架的理念是什么呢?我很少看到相关的介绍,更多的是“Rails 哪里 blabla 不好,X 框架解决了这个问题”,这只能忽悠到一些学 Rails 未精的人。我多希望你们多分享一些新的理念,让我们互相促进。
最后,对初学者说,Rails 没有问题,核心的人没有离开。如果你身边没有这样的环境,放眼到开源社区中去,全球 Ruby 社区比你看到的大得多。
不想动
谁说这里是后端社区?
不过这代码有问题:
<% if @user.articles.any? %>
<% @articles.each do |club| %>
判断 @user.articles.any?
却遍历了 @articles
,到底用哪个?
这个例子没必要改,别的写法更复杂。
用 SecureRandom.uuid
$(".selector").flatpickr(optional_config);
本身 API 就很简单,写那么复杂干什么?
apt-get install build-essential
错误信息贴全
gem install nokogiri
然后把错误信息贴全。
一楼不是吗?
bcrypt 是哈希不是加密,没有解密一说。
快来快来,项目太多,人不够了。
<script></script>
内嵌在页面。/assets/javascript
下新建任意一个 coffee 文件,默认都会被打包到 application.js
中。顶楼的路径是符合惯例的。没对外开放,说明需要小白鼠啊😃
建议不要在 Rails 上叠加 grape,不然处理各种兼容问题烦得要死。要不用 Rails 要不用 Grape。