У меня есть 2 стола, один из которых называется фильмы и один называется пользователями. Пользователь может добавить фильм в свой список наблюдения. Когда пользователь делает это, приложение создает новую запись в моей таблице фильмов с именем фильма, id, датой выпуска и т. Д. Таким образом, возможно иметь 3 записи одного и того же фильма. Но все с разными идентификаторами пользователя. Это не предпочтительнее.Проверьте, действительно ли значение уже вышло
Так что я пытаюсь выяснить, как проверить, существует ли запись (фильм с movie_id
). Если фильм уже существует, добавьте текущий идентификатор пользователя в коду user id
, чтобы несколько пользователей могли совместно использовать одну и ту же видеозапись. Если он еще не существует, создайте новую запись.
Это мой текущий создать функцию в моем контроллере movies.rb,
def create
respond_with Movie.create(movie_params.merge(user_id: current_user.id))
end
И в моей модели кино у меня есть,
belongs_to :user
И я использую Угловое как мой передний конец рамки, так что это моя угловая функция addMovie,
movieAdd.add()
.then(function(response){
$scope.movieListID = response;
console.log ('Not empty' + $scope.movieListID)
for (var i = 0; i < $scope.movieListID.releases.countries.length; i++) {
var release = $scope.movieListID.releases.countries[i];
if (release['iso_3166_1'] == 'NL') {
releaseNL = release;
}
}
if(typeof releaseNL === 'undefined'){
// With release date
Notification($scope.movieListID.original_title + ' is toegevoegd, maar heeft nog geen Nederlandse premiere datum.');
createMovie.create({
title: $scope.movieListID.original_title,
release_date: $scope.movieListID.release_date,
image: $scope.movieListID.poster_path,
movie_id: $scope.movieListID.id
}).then(init);
} else {
Notification.success($scope.movieListID.original_title + ' is toegevoegd.');
createMovie.create({
title: $scope.movieListID.original_title,
release_date: releaseNL.release_date,
image: $scope.movieListID.poster_path,
movie_id: $scope.movieListID.id
}).then(init);
};
})
Ваша схема кажется неправильной. Что вы пытаетесь моделировать? Пользователь смотрит фильм или что-то еще? Если это так, вам понадобится больше моделей, например, MovieUser, который позволяет устанавливать отношения «habtm» между фильмами и пользователями. –
Я думал, что могу вставить идентификатор текущих пользователей в коллапс идентификатора пользователя фильма. У этой коллизии может быть несколько идентификаторов пользователей. –
Это звучит уродливо, как черт, используйте другую таблицу для моделирования отношений. Вот как работают рельсы. –