我是rails的新手(刚刚完成了教程),我试图将对象的删除仅限于所有者,但任何人都可以查看它。
目前,如果我签名(对任何帐户),那么当我点击'销毁'时没有任何事情发生(没有刷新,没有),但如果我没有登录,那么它会问我是否确定 - >然后它检查我是否已登录并将我弹出到sign_in页面。
events_controller.rb
class EventsController < ApplicationController
before_filter :signed_in_user, only: [:create, :edit, :update, :destroy]
before_filter :correct_user, only: [ :edit, :update, :destroy]
...
# DELETE /events/1
# DELETE /events/1.json
def destroy
@event.destroy
redirect_to root_path
end
private
def signed_in_user
unless signed_in?
store_location
redirect_to signin_path, notice: "Please sign in."
end
end
def correct_user
@event = current_user.events.find_by_id(params[:id])
redirect_to root_path if @event.nil?
end
def admin_user
redirect_to(root_path) unless current_user.admin?
end
end
非常感谢教育解释。感谢
Rake Routes - 根据要求
events GET /events(.:format) events#index
POST /events(.:format) events#create
new_event GET /events/new(.:format) events#new
edit_event GET /events/:id/edit(.:format) events#edit
event GET /events/:id(.:format) events#show
PUT /events/:id(.:format) events#update
DELETE /events/:id(.:format) events#destroy
locations GET /locations(.:format) locations#index
POST /locations(.:format) locations#create
new_location GET /locations/new(.:format) locations#new
edit_location GET /locations/:id/edit(.:format) locations#edit
location GET /locations/:id(.:format) locations#show
PUT /locations/:id(.:format) locations#update
DELETE /locations/:id(.:format) locations#destroy
sessions POST /sessions(.:format) sessions#create
new_session GET /sessions/new(.:format) sessions#new
session DELETE /sessions/:id(.:format) sessions#destroy
following_user GET /users/:id/following(.:format) users#following
followers_user GET /users/:id/followers(.:format) users#followers
users GET /users(.:format) users#index
POST /users(.:format) users#create
new_user GET /users/new(.:format) users#new
edit_user GET /users/:id/edit(.:format) users#edit
user GET /users/:id(.:format) users#show
PUT /users/:id(.:format) users#update
DELETE /users/:id(.:format) users#destroy
microposts POST /microposts(.:format) microposts#create
micropost DELETE /microposts/:id(.:format) microposts#destroy
POST /events(.:format) events#create
DELETE /events/:id(.:format) events#destroy
relationships POST /relationships(.:format) relationships#create
relationship DELETE /relationships/:id(.:format) relationships#destroy
root / static_pages#home
signup /signup(.:format) users#new
help /help(.:format) static_pages#help
about /about(.:format) static_pages#about
contact /contact(.:format) static_pages#contact
GET /users(.:format) users#index
POST /users(.:format) users#create
GET /users/new(.:format) users#new
GET /users/:id/edit(.:format) users#edit
GET /users/:id(.:format) users#show
PUT /users/:id(.:format) users#update
DELETE /users/:id(.:format) users#destroy
POST /sessions(.:format) sessions#create
GET /sessions/new(.:format) sessions#new
DELETE /sessions/:id(.:format) sessions#destroy
/signup(.:format) users#new
signin /signin(.:format) sessions#new
signout DELETE /signout(.:format) sessions#destroy