Street属性によってアドレスをロードする方法
-
16-10-2019 - |
質問
次のコードを使用してアドレスをロードできます。
$addresses = $addressObj->getCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('firstname', $addressData['firstname'])
->addAttributeToFilter('lastname', $addressData['lastname'])
->addAttributeToFilter('city', $addressData['city'])
->addAttributeToFilter('postcode', $addressData['postcode'])
->addAttributeToFilter('telephone', $addressData['telephone'])
->load();
問題はそれです street
アドレスオブジェクトに返されたときの配列なので、どうすれば追加できますか street
上記の私のフィルターに?
すべてのアドレスをロードしてコードでそれらをループしてから、配列をデータと比較できることは知っていますが、可能であればこのステップを避けたいと思います。
解決
これは機能するはずです:
->addAttributeToFilter('street', 'somewhere');
またはこれ、あなたが望むなら like
フィルター
->addAttributeToFilter('street', array('like'=>'%somewhere%'));
通りが配列として返されたとしても、データベース内のフィールドとして保持されます。配列内の値はによって連結されます \n
.
2行にある正確なアドレスを探している場合、これはそれを行うはずです。
->addAttributeToFilter('street', 'somewhere\nelse');
所属していません magento.stackexchange