Yii 2-Namespace fehlt?
Habe ich einen namespace, fehlende problem in Yii-2. Ich installierte die erweiterte Anwendung. Ich bin Referenzierung eines backend-Modell von meinem frontend-controller. Unten ist ein code-snippet von meinem backend-Modell, frontend-controller und Fehlermeldung.
Fehler
Nicht in der Lage zu finden, "backend\models\PaymentsMethod\TermsAndConditions' in der Datei: C:\inetpub\wwwroot\jobmanager/backend/models/PaymentsMethod/TermsAndConditions.php. Namespace fehlt?
Backend-Modell
namespace app\models\PaymentsMethod;
use Yii;
class TermsAndConditions extends \yii\db\ActiveRecord
{
Frontend-Modell
public function actionCreate()
{
$model = new estimate();
$tnc = new \backend\models\PaymentsMethod\TermsAndConditions();
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich gelöst, mein problem. Ich habe versucht, den Zugriff auf eine backend-model-Klasse aus einen frontend controller. Ich habe dieses Problem gelöst, indem das verschieben der backend-model-Klasse auf der gemeinsame-Ordner und von dort aus kann ich darauf verweisen sowohl die backend-und frontend.
Dank
In Ihrem frontend, zuerst die namespace-und dann instanziieren:
ODER
Als alfallouji sagte Sie direkt verwenden können:
Sie definiert das Modell mit diesem namespace
app\models\PaymentsMethod
und dann sind Sie zu instanziieren versucht\backend\models\PaymentsMethod\TermsAndConditions
.Sollten Sie dabei, dass in Ihrem frontend-Modell :
Namespace-Deklaration-Anweisung muss die erste Anweisung im Skript
123456789101112
Wenn Sie Zugriff auf von frontend dann verwenden frontend statt app
ich.e
und wenn Sie Zugriff auf von backend dann verwenden Sie wie unten
ersetzen "backend" für die "app" nur Modelle Suche
ex: app\Modelle\PaymentsMethod;