[英]PhpActiveRecord: Creating initialize object
我正在使用php activerecord 。 我需要初始化一个Order
对象,然后设置相关对象,如下所示
$order = new Order();
Order->_plan = Plan::find(1);
我Undefined property: Order->_plan in /var/www/ordenes-web/core/libs/php-activerecord/lib/Model.php on line 428
得到错误Undefined property: Order->_plan in /var/www/ordenes-web/core/libs/php-activerecord/lib/Model.php on line 428
我的课:
class Order extends ActiveRecord\Model{
static $belongs_to = array(
array(
'_plan',
'class_name' => 'Plan',
'foreign_key' => 'plan'
),
);
}
关系很好。 如果我在查找器中找到Order
, _plan
得到相关对象_plan
:
Order::find(1)->_plan // Works!
我究竟做错了什么?
问题是ActiveRecord不支持此行为。 你可以在这里看到
这条线
Order->_plan
真的没什么意思。 您可以找到对象的属性,例如$order
对象。
这行表示您正在制作一个对象,然后找到_plan
属性。 哪个好
Order::find(1)->_plan // Works!
为此,您应该
$order = Order::find(1);
var_dump($order->_plan;) // should work!
现在,您可以更改_plan中的内容(如果有的话),例如
$order->_plan->world = "Hello".
现在您应该记住,已在对象中设置了关系,因此可以达到它们。 我想你不应该创建这样的对象。
但是您的示例不起作用会做其他事情
最后一部分不像我想的那样工作,请参阅@ Overflow012发布的此链接 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.