0

有人可以帮我解决以下两个问题吗?

  1. 如何在下面的查询中过滤 Websiteid?
  2. 是否可以从一个文件中的两个集合中获取数据?最后一个值“公司”应该来自现在被注释掉的客户地址模型。
<?php function getcustomers() 
{
  /* Magento's Mage.php path
   * Mage Enabler users may skip these lines
   */
  require_once ("app/Mage.php");
  umask(0);
  Mage::app("nl");
  /* Magento's Mage.php path */

  /* Get customer model, run a query */
  $collection = Mage::getModel('customer/customer')
  //$collection = Mage::getModel('customer/address')
    ->getCollection()
    ->addAttributeToSelect('*');

  $result = array();
  foreach ($collection as $customer) { $result[] = $customer->toArray();  }

  return $result; 
} 
?>
<html>
<head>
  <title>Customers</title>
  <style>    table {border-collapse: collapse;} 
  td {padding: 5px;   border:1px              solid             #000000;}
  </style>
</head>
<body>
<table>
<tr>
<td>ID</td>
<td>Lastname</td>
<td>Firstname</td>
<td>Email</td>
<td>Is Active?</td>
<td>Date Created</td>
<td>Date Updated</td>
<td>Website ID</td>
<td>Store ID</td>
<td>Zip Code</td>
</tr>
<?php
   $result = getcustomers();
   if(count($result) > 0)
   {
     foreach($result as $key => $value)
     {
       echo "<tr>";
       echo "<td>".$value['entity_id']."</td>";
       echo "<td>".$value['lastname']."</td>";
       echo "<td>".$value['firstname']."</td>";
       echo "<td>".$value['email']."</td>";
       echo "<td>";
       echo $value['is_active'] == 1 ? "Yes" : "No";
       echo "</td>";
       echo "<td>".$value['created_at']."</td>";
       echo "<td>".$value['updated_at']."</td>";
       echo "<td>".$value['website_id']."</td>";
       echo "<td>".$value['store_id']."</td>";
       echo "<td>".$value['zipcode']."</td>";
       echo "</tr>";
     }
   }
   else
   {
     echo "<tr><td colspan=\"7\">No records found</td></tr>";
   }
   ?>
   </table>
   </body>
   </html>
4

1 回答 1

1

在这里,也许试试这个?同样,我不确定这是否可行,但我认为它的方向是正确的。

<?php 

$collection1 = Mage::getModel('customer/customer')->getCollection();
$collection2 = Mage::getModel('customer/address')->getCollection();

$merged_ids = array_merge($collection1->getAllIds(), $collection2->getAllIds());

$merged_collection = Mage::getResourceModel('customer/customer_collection')
    ->addFieldToFilter('customer_id', $merged_ids)
    ->addAttributeToSelect('*')
    ->addStoreFilter();


?>
于 2012-04-19T23:00:06.640 回答