У меня есть остальные API в Laravel, как показано ниже:
{
"id": 17,
"title": "Devnet",
"slug": "devnet",
"content": "sfdf",
"technology_id": 1,
"image": "http://127.0.0.1:8000/uploads/posts/1570907475IMG_20171229_123822.jpg|uploads/posts/1570907475IMG_20171229_133927.jpg|uploads/posts/1570907475IMG_20180319_124721.jpg",
"link": "https://www.somelink.com/in/test/",
"deleted_at": null,
}
Мне нужно удалить локальный IP-адрес (127.0.0.1:8000
) из всех ответов. Например, на рисунке у меня есть 3 файла, но в коде, который яВ настоящее время вы можете видеть 3 ссылки, и только одна из них имеет полный путь.
На самом деле в БД они не имеют полного пути. Все они размещены в БД без локального ip, как это uploads/posts/image_name.jpg
. При создании моделиЯ проверяю с dd все мои изображения без локального ip (127.0.0.1:8000
). Только uploads/posts/image_name.jpg
.
Как хранить данные в БД в контроллере:
$images = array();
if ($files = $request->file('image')) {
foreach ($files as $file) {
$name = "uploads/posts/" . time() . $file->getClientOriginalName();
$file->move("uploads/posts", $name);
$images[] = $name;
}
}
// validating in here ..
if I dd($images) in here it show me 3 array of images without local ip.
$project= Project::create([
"title" => $request->title,
"content" => $request->content,
'image' => implode("|", $images),
"technology_id" => $request->technology_id,
"slug" => str_slug($request->title),
"tags" => "required",
"link" => $request->link
]);
Также мой основной Controller
, который возвращает json
для просмотра ничего особенного.
public function index(){
$result = Project::with('something','something')->get();
return response()->json($result);
}
Модель проекта
class Project extends Model
{
use SoftDeletes;
protected $fillable = [
"title","content","image","technology_id","link","slug"
];
public function getImageAttribute($image){
return asset($image);
}
protected $dates = ["deleted_at"];
}