2017-02-20 6 views
0

Ich bin neu in Drupal 8.Drupal 8 - Fatal error: Kann nicht neu deklarieren Klasse

Nun, ich bin mit 8.2.6-Version. Ich folge dem Tutorial von link.

Ich wurde es genau so gemacht.

Aber das Tab-Menü wurde nicht angezeigt, wie kann ich auf dieses Modul zugreifen? Und wenn ich alle Cache gelöscht, bekam ich diese Fehlermeldung:

Fatal error: Cannot redeclare class Drupal\bd_contact\AdminController in D:\Dropbox\projects\drupal-8.2.6\modules\custom\bd_contact\src\Controller\AdminController.php on line 7 

Wer weiß, warum ich diesen Fehler mit bin?

Antwort

2

Der PHP-Fehler Die Klasse kann nicht redeclare wird verursacht, wenn Sie versuchen, eine Klasse zu erstellen, die Sie bereits erstellt haben.

Zum Beispiel:

//create one time 
class AdminController {} 

//and recreated the class with the same name 
class AdminController {} 

Sie benötigen die AdminController.php Datei zu überprüfen, ob es zwei Klassen mit dem gleichen Namen hat und dann mit dem Quellcode dieses Tutorial auf GitHub Projekt link Projekt zu vergleichen.

+0

Vielen Dank für die Weiterleitung zu einem GitHub Projekt! – Akki

+0

@Akki, ich weiß nicht, ob Sie sich bedanken oder sich beschweren, aber das OP folgt dem Beispiel, das im GitHub-Projekt verfügbar ist, das ich in der Antwort erwähnt habe. Und er sagte, dass er dem Beispiel auf die gleiche Weise folgte, also sagte ich ihm nur, dass er den Quellcode verifizieren sollte. – coderade

+0

Wenn Sie die Frage sorgfältig gelesen haben, hat Question asker den Link erwähnt und das ist nicht von GitHub. Es gibt tatsächlich einen Unterschied zwischen dem Code von Link und Github. Github-Code funktioniert gut. Du hast das falsch verstanden. – Akki

0

Vielleicht ist der Name des Controllers nicht gut gewählt, weil es im Drupal-Core bereits einen solchen Controller gibt.

Mit Namespace sollte es kein Problem verursachen, aber versuchen Sie, Ihren Controller in der Klassendatei und in der Routingdatei umzubenennen.

Verwandte Themen