Имам таблица с филми и таблица с жанрове и заявих връзките си, както е показано по-долу
public function genres()
{
return $this->belongsToMany("Genre");
}
и в жанров модел
public function movies()
{
return $this->belongsToMany("Movie");
}
и така изглежда контролерът ми, но когато се опитам да кача филми, филмът се качва успешно, но връща грешка, показана по-долу
$movie = new Movie();
$movie->status_id = Input::get("status");
$movie->title = Input::get("title");
$movie->summary = Input::get("summary");
$movie->duration = Input::get("duration");
$movie->cast = Input::get("cast_list");
$movie->director = Input::get("director");
$movie->price = Input::get("movie_price");
$movie->dimension = Input::get("dimension");
$movie->time_showing = Input::get("time_showing");
$movie->time_showing1 = Input::get("time_showing1");
$movie->photo = $photoname;
$movie->date_showing = Input::get("date_showing");
$movie->save();
$movie->genres()->sync(Input::get("genre"));
return Redirect::back()->with("success", "movie added successfully");
И това е грешката
Аргумент 1 е приетда се IlluminateDatabaseEloquentRelationsBelongsToMany :: formatSyncList () трябва да бъде от типа масив, даден низ, извикан E: CinemavendorlaravelframeworksrcIlluminateDatabaseEloquentRelationsBelongsToMany.php на линия 599 и дефинирана
Всеки, който може да ми помогне, ще бъда благодарен благодаря.
Отговори:
0 за отговор № 1sync()
очаква array
, за да можете да опитате:
$movie->genres()->sync(array(Input::get("genre")));
Ако вашата PHP версия е 5.4 или по-нова, можете да използвате синтаксис на къси масиви така
$movie->genres()->sync([Input::get("genre")]);