我不确定我是否正确地用了这个问题,但我试图弄清楚这行代码实际上做了什么:
@orderdata = Order.find(:all, :conditions => ["customer_ID = ?",@data])
这是我的 SQL 数据库中 Orders 表包含的内容:
订单
+-------+------------+-------------+
| id | order_date | customer_ID |
+-------+------------+-------------+
| 12475 | 2008-09-01 | 522 |
| 12476 | 2008-09-01 | 311 |
| 12477 | 2008-09-01 | 567 |
| 12478 | 2008-09-01 | 587 |
| 12482 | 2008-09-01 | 124 |
| 12483 | 2008-09-01 | 315 |
| 12484 | 2008-09-02 | 256 |
| 12489 | 2008-09-02 | 311 |
| 12494 | 2008-09-04 | 315 |
| 12495 | 2008-09-04 | 256 |
| 12498 | 2008-09-05 | 522 |
| 12504 | 2008-09-06 | 522 |
+-------+------------+-------------+
所以再一次,我将添加代码行,这样您就不必向上滚动:
@orderdata = Order.find(:all, :conditions => ["customer_ID = ?",@data])
我读了一些关于 Ruby on Rails 对这个 .find() 函数所做的事情,我开始相信它返回了某种类型的数组,但不确定到底是什么。
@data 是文本字段 HTML 表单中的用户输入,它应该是客户编号。所以我相信这行代码正在创建一个名为@orderdata 的数组并填充它。它在Orders表中查找所有出现的 key customer_ID等于@data(用户输入的客户编号/id)。
我想我的问题本质上是:@orderdata 中会有什么?以及如何访问其中的值?
谢谢!