Simple rating system doesent do anything in ruby on rails

I think you forget to save it.

    def create
        @rating = Rating.new(rating_params)
        @rating.movie_id = @movie.id
        @rating.save
    end

As far everything thing looks good but you can create an instance of your review model which means it is temporary and is stored on ram and as you leave the controller the Garbage collector will collect it and delete it from memory and you will lose your progress!

Review.new will do nothing on database.

What you can do is Review.create(your data) or review = Review.new(your data) then processing that you want if any and than review.save

Save() method when called, hits the database and stores the instance in db while Create() method directly hits to the databases and you don't have to call save method to save data in db. Thats it.