Ich habe Probleme beim Speichern von Bildern im Ordner 'public' des Laravel-Frameworks (was ich glaube, dass es sich um den statischen Inhaltsordner handelt? Bitte korrigieren Sie mich, wenn ich falsch liege).Statischen Inhalt in den öffentlichen Ordner von Laravel speichern
Ich benutze einen Seed mit Faker, der Bilder erzeugt und speichert die Bilder URLs in einer Tabelle. Dies funktioniert alles korrekt, aber der Seed selbst schlägt fehl, da er scheinbar nicht auf den Ordner innerhalb des von mir erstellten Öffentlichen Ordners zugreifen kann. Das ist meine öffentliche Ordner-Struktur:
/public/assets/images
Und hier ist mein Samen, die meine Bilder in diesen Ordner speichern soll:
<?php
use Illuminate\Database\Seeder;
class ProductsTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('products')->truncate();
$faker = Faker\Factory::create();
$limit = 30;
for($i = 0; $i < $limit; $i++) {
DB::table('products')->insert([
'title' => $faker->name,
'SKU' => $faker->name,
'description' => $faker->text,
'created_at' => $faker->dateTime,
'updated_at' => $faker->dateTime,
'images' => $faker->image(URL::to(Config::get('assets.images')) ,800, 600, [], [])
]);
}
}
}#
Die 'assets.images' config-Datei ist:
<?php
return [
'images' => '/assets/images'
];
Wenn ich versuche, und den Samen betreiben meine Datenbank zu füllen ich die folgende Fehlermeldung erhalten:
[InvalidArgumentException]
Cannot write to directory "http://localhost:8931/assets/images"
Ich kann nicht sehen, wo ich falsch liege. Kann mir jemand Einblick geben?
'http: // localhost: 8931/assets/images' Ich denke, das sollte 'http: // localhost: 8931/public/assets/images' sein – aldrin27