我是 Ruby 的新手,我尝试过一些在线教程,但是我想检查一些东西,因为我似乎无法让它工作,我现在迷路了。
我已经用 Ruby 建立了一个数据库作为注册网站。这是一个简单的单行数据库,我只使用由 ruby 创建的默认应用程序控制器。现在我的问题。
我想计算我的一个数据库列中的所有条目,该列只有两个静态条目(是/否),我想将 YES 计为 2 个条目,将 NO 计为 1 个条目,并在 index.html 上显示总数.erb,这可能吗?
提前致谢
编辑...
表 = mydb 列 = 答案
我在控制器中使用了以下几行,但是当我运行应用程序时,我得到了动态常量分配。
NO_WEIGHT = 1
YES_WEIGHT = 2
yes_count = ModelName.where(:column_name => "YES").count * YES_WEIGHT
no_count = ModelName.where(:column_name => "NO").count * NO_WEIGHT
有了那个错误,我用
@NO_WEIGHT = 1
@YES_WEIGHT = 2
@yes_count = mydb.where(:answer => "YES").count * @YES_WEIGHT
@no_count = mydb.where(:answer => "NO").count * @NO_WEIGHT
有了这个,我检查了日志,我看到了这个
Select Count(*) from mydb where mydb.answer = 'YES'
Select Count(*) from mydb where mydb.answer = 'NO'
没有预期的“* @YES_WEIGHT”作为乘数。
我还想尝试它是否使用以下行在我的 index.html 上显示结果:
<p> YES count is <% @yes_count %> </p>
但遗憾的是没有输出。
我只想检查如何将动态常量修复为静态变量,以便我的查询按预期工作和显示。
感谢所有的帮助