因此,我将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中,当我更改"注册为成员的验证时,#34;表单字段(该函数被称为' createFields')到Member::currentUserID()
它识别我已登录并跳过该部分。只有在将我的订单和客户详细信息保存到客户数据库表时,它才能检索我的电子邮件地址。
答案 0 :(得分:0)
我知道这是一个老帖子,但我已经使用这个代码/方法一直到SS 3.4。
您需要更新Aram的代码以使用SS 3.x.x
https://www.silverstripe.org/community/forums/e-commerce-modules/show/21390
-helenclarko