因此,我將SwipeStripe模塊用作電子商務商店,並且遇到問題會將會員詳細信息記錄爲客戶詳細信息。我會概述這個過程以及迄今爲止我嘗試過的。Silverstripe:SwipeStripe會員/客戶記錄未定義
- 我目前以我的網站會員身份登錄。
- 我可以查看並添加產品到我的購物車。
- 當我到達結賬頁面時,它要求我註冊我的詳細信息(成爲會員)。
我已經經歷了Customer.php和OrderForm.php文件。我發現的是:
Customer::currentUser()
不認可我作爲登錄用戶。
當我打印Member::currentUser()
它可以看到我是一個登錄,註冊成員,我可以打印該記錄的詳細信息。
Customer::currentUser()
是在Customer.php文件如下:
static function currentUser() {
$id = Member::currentUserID();
if($id) {
return DataObject::get_one("Customer", "\"Member\".\"ID\" = $id");
}
}
我在想,如果有人可以幫助我理解了爲什麼Customer::currentUser()
是不承認我作爲登錄的用戶?
此外,在OrderForm.php中,當我將「註冊爲成員」表單字段(該函數稱爲「createFields」)的驗證更改爲Member::currentUserID()
時,它確認我已登錄並跳過該部分。只有當它將我的訂單和客戶詳細信息保存到客戶數據庫表中時,才能檢索我的電子郵件地址。
您登錄爲用戶的工作,你將它們設置爲一個客戶,或作爲會員? SwipeStripe正在等待客戶用戶。如果您僅以會員身份登錄,則可能會使SwipeStripe代碼混淆。 – 3dgoo
感謝回覆@ 3dgoo他們設置爲成員。無論如何要讓用戶既是會員又是具有相同記錄的客戶?我不想爲了使用商店而必須使用2個帳戶設置我的會員。我已將「客戶」設置爲管理員部分中的「成員」組的「子組」,但我仍遇到同樣的問題。 – Dallby
在SwipeStripe中,客戶是成員,具有額外的字段和功能。會員不是客戶。如果您希望用戶能夠使用該商店,請確保將其設置爲客戶。 – 3dgoo