Я начиная с рубином на рельсах, и я хочу знать, как запретить пользователь редактировать запись, которая не, это мой код:разрешения падла рубин на рельсах
class PinsController < ApplicationController
before_action :find_pin, only: [:show, :edit, :update, :destroy, :upvote]
before_action :authenticate_user!, except: [:index , :show]
def index
@pins = Pin.all.order("created_at DESC")
end
def show
end
def new
@pin = current_user.pins.build
end
def create
@pin = current_user.pins.build(pin_params)
if @pin.save
redirect_to @pin, notice: "Pin creado"
else
render 'new'
end
end
def edit
end
def update
if @pin.update(pin_params)
redirect_to @pin, notice: "Actualizado correctamente"
else
render 'edit'
end
end
def destroy
@pin.destroy
redirect_to root_path
end
def upvote
@pin.upvote_by current_user
redirect_to :back
end
private
def pin_params
params.require(:pin).permit(:title, :description, :image)
end
def find_pin
@pin = Pin.find(params[:id])
end
end
, а также в представлении у меня есть две кнопки, одна для редактирования и удаления другой, так как я могу сделать это, только если вы aparescan является создателем записи?
Пожалуйста вычитать ваш вопрос. Кажется, что вам не хватает того, что кажется очень важным словом: «запретите пользователю редактировать запись, которая не является», – MarsAtomic
Сделайте это так же, как вы делаете это в своих «новых» и «созданных» действиях, current_user.pins ', который предоставит вам только те контакты, которые принадлежат зарегистрированному пользователю. – fanta