从laravel4中的控制器调用自定义模型的方法

San*_*ghs 2 php controller model function laravel

我试图Email从我的模型中调用我的模型中的自定义方法SessionsController.这是我的模特

<?php

class Email extends Eloquent {
    protected $guarded = array();

    public static $rules = array();

    public function sendMail($type,$data)
    {
        echo "yes";
    }
}
Run Code Online (Sandbox Code Playgroud)

从我SessionsController想要的sendMail方法.我怎么称呼它?

The*_*pha 10

您也可以使用

class Email extends Eloquent {
    public static function sendMail($type, $data)
    {
        //...
    }
}
Run Code Online (Sandbox Code Playgroud)

并从控制器打电话

Email::sendMail('someType', $dataArray);
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用Scope(而不是static)

class Email extends Eloquent {
    public function scopeSendMail($query, $type, $data)
    {
        // You can use $query here
        // i.e. $query->find(1);
    }
}
Run Code Online (Sandbox Code Playgroud)

并从控制器调用它

Email::sendMail('someType', $dataArray);
Run Code Online (Sandbox Code Playgroud)

还要检查这个答案.