PHP-将包模型扩展到您自己的

时间:2019-02-28 14:56:10

标签: php laravel

我目前正在尝试使用Laravel Mailbox设置一个简单的Web应用程序。我看到我可以定义一个自定义模型以在配置文件中使用:

    /*
     * The model class to use when converting an incoming email to a message.
     * It must extend the default model class
     */
    'model' => \BeyondCode\Mailbox\InboundEmail::class,

上面是它使用的默认模型。

我将其更改为:

    /*
     * The model class to use when converting an incoming email to a message.
     * It must extend the default model class
     */
    'model' => Email::class,

现在,我希望使用自己的模型,因为我想将电子邮件存储在另一个表上。为此,我创建了自己的模型,并尝试从包中扩展原始模型,但是例如覆盖$table

App / Email.php:

namespace App;

use BeyondCode\Mailbox\InboundEmail as InboundEmail;

class Email extends InboundEmail
{
    protected static function boot()
    {
        parent::boot();
    }

    protected $table = 'emails';
}

但是,上面的错误提示我如下:

Undefined property: App\Email::$message {"exception":"[object] (ErrorException(code: 0): Undefined property: App\\Email::$message at /Users/Username/Sites/playground/vendor/beyondcode/laravel-mailbox/src/InboundEmail.php:130)

我怀疑是因为我自己的模型App/Email.php中没有包装模型中存在的原始方法。

没有一种方法可以通过扩展包模型来使用我自己的模型,而无需将包模型的内容复制到我自己的模型中?

0 个答案:

没有答案