Phalcon模型关系选择


Phalcon Model Relationship Select

我有两个模型:

发票(发票)

InvItem (invoice行项目)

当试图通过Inv模型检索InvItem时,我得到一个500错误。屏幕上或日志文件中没有错误报告。参考https://docs.phalconphp.com/en/latest/reference/models.html unidirectional-relationships

服务代码

$invoice = Inv::findFirst($id);
$item = $invoice->invItem;

Inv模型关系

Primary: inv_id
$this->hasMany('inv_id', 'InvItem', 'inv_id');

InvItem模型关系

Primary: inv_item_id
$this->belongsTo('inv_id', 'Inv', 'inv_id');

Update (Added Models)

<<p> InvItem模型/em>
class InvItem extends InvBaseModel
{
    /**
     *
     * @var integer
     */
    public $inv_item_id;
    /**
     *
     * @var integer
     */
    public $inv_id;
    /**
     *
     * @var string
     */
    public $item;
    /**
     *
     * @var string
     */
    public $desc;
    /**
     *
     * @var integer
     */
    public $quantity;
    /**
     *
     * @var double
     */
    public $rate;
    /**
     *
     * @var double
     */
    public $disc;
    /**
     * @var double
     */
    public $total;
    public function initialize()
    {
        $this->belongsTo('inv_id', 'Inv', 'inv_id');
    }
}
<<p> 发票模型/em>
class Inv extends InvBaseModel
{
    /**
     *
     * @var integer
     */
    public $inv_id;
    /**
     *
     * @var integer
     */
    public $app_id;
    /**
     *
     * @var integer
     */
    public $acct_contact_id;
    /**
     *
     * @var integer
     */
    public $status;
    /**
     *
     * @var string
     */
    public $create_date;
    /**
     *
     * @var string
     */
    public $due_date;
    /**
     *
     * @var string
     */
    public $inv_date;
    /**
     *
     * @var string
     */
    public $sent_date;
    /**
     *
     * @var string
     */
    public $paid_date;

    public function initialize()
    {
        $this->hasMany('inv_id', 'InvItem', 'inv_id');
    }
}

我通过在关系模型中使用名称空间解决了这个问题。

public function initialize()
{
    $this->hasMany('inv_id', 'Multiple'Invoice'InvItem', 'inv_id');
}