2017-09-01 3 views
0

Ich habe Dateien in der nächsten Route gespeichert: /resources/views/projects/nameproject.blade.phpLaravel: Umbenennen einer Datei

Ich habe ein Formular, wo ich den neuen Namen des Projekts gestellt und ich möchte eine Umbenennungs der Datei mit dem Namen erstellt, um des Projekts, zum Beispiel:

ich habe ein Projekt namens lluistestbefore, ihr Weg sie diese ist: /resources/views/projects/lluistestbefore.blade.php

Wenn ich die Form I geben sie einen neuen Wert namens einreichen: lluistestafter, sollte der Weg sein:

/resources/views/projects/lluistestafter.blade.php

Die Controller-Funktion wie folgt aussieht:

public function updateProject(Request $request, $id) //Update the project info 
     { 
      $project = Project::find($id); //Find which project is 

       $oldSlug = $project->slug; //save the old value into the variable 

       $project->order = $request->input('order'); //it's not important 
       $project->public = $request->input('public'); //it's not important 

       if (strcmp($oldSlug, $request->input('slug')) !== 0) { //If slug change enter to the if 

       Storage::disk('projects')->move($project->slug, $request->input('slug')); //it's not important 

       $project->slug = $request->input('slug'); //get the value of the new slug 

       $project->pathheader = $request->input('slug').'/header.jpg'; //it's not important 

       $project->pathhome = $request->input('slug').'/home.jpg'; //it's not important 

       File::move('/resources/views/projects/'.$oldSlug.'.blade.php','/resources/views/projects/'.$project->slug.'.blade.php'); //Function which is not working correctly and give me the error. 
      } 
     } 

Der Fehler ist dies: rename(/resources/views/projects/lluistestantes.blade.php,/resources/views/projects/lluistestdespues.blade.php): No such file or directory

+1

Wenn Sie den Pfad mit einem Start '/', Ihr Betriebssystem wird normalerweise denken, dass Sie von der Wurzel Ihrer Partition meinen. Verwenden Sie absolute Pfade oder legen Sie den Pfad relativ zu Ihrem Arbeitsverzeichnis fest. –

+0

Können Sie mit der richtigen Syntax antworten? Ich versuche es ohne/am Anfang und versuchte es auch mit public_path(). –

+0

Es hängt von Ihrer Einrichtung ab, aber z.B. 'app_path ('resources/views/projects/lluistestantes.blade.php')' oder ähnlich. –

Antwort

1

den folgenden Code Versuchen:

File::move(resource_path('views/projects/'.$oldSlug.'.blade.php'),resource_path('views/projects/'.$project->slug.'.blade.php'));