i扩展了一个定义某些属性的类。
我必须使继承的属性存储在我的数据库中以映射结果实体。
该语法看起来如何?
i扩展了Payum付款模型类" paymaindetails",该类本身正在扩展下面的"付款"类别:
/**
* Class Payment
*
* Lets you create, process and manage payments.
*
* @package PayPalApi
*
* @property string id
* @property string intent
* @property PayPalApiPayer payer
* @property PayPalApiTransaction[] transactions
* @property string state
* @property string experience_profile_id
* @property string note_to_payer
* @property PayPalApiPayee $payee
* @property PayPalApiRedirectUrls redirect_urls
* @property string failure_reason
* @property string create_time
* @property string update_time
* @property PayPalApiLinks[] links
*/
class Payment extends PayPalResourceModel
{
// ...
}
" paymenteDetails"类是:
use PayPalApiPayment as BasePaymentDetails;
class PaymentDetails extends BasePaymentDetails
{
protected $idStorage;
}
我自己的班级看起来像这样的atm:
/**
* @ORMTable
* @ORMEntity
*/
class PaymentPaypalPlus extends PaymentDetails
{
/**
* @ORMColumn(name="idPpp", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="IDENTITY")
*
* @var integer $idPpp;
*/
protected $id;
}
我需要以某种方式使" PaymentpayPalplus"类用作Payum的有效存储类,这意味着我必须将基本类别的属性映射到DB(使用ORM(。至少这就是我认为我应该做的。如果这没有意义,请告诉我: - (
它认为您正在寻找的最接近的东西是php映射或yaml映射。
如果属性受到保护,您也可以在带注释的子类中重新定义它们 - 但是,除非有很多功能/等,否则这将失败继承的目的。
真正的继承,例如学说继承映射甚至PHP特征也有效,但是您必须修改供应商类。