Ruby on rails 登录使用带有Ruby on rails的设备后输入的页面
我正在制作一个人们可以分享东西的平台。我有一个问题,当人们登录,因为我想重定向到一个特殊的页面,但我不能找出它,希望有人能帮助我 我还有另一个问题,因为我想在导航栏上创建一个页面,人们登录后可以在那里看到他们的pin。我已经找到了他们在哪里可以看到所有的引脚,但可以找到如何显示自己的引脚。我的想法是使用:Ruby on rails 登录使用带有Ruby on rails的设备后输入的页面,ruby-on-rails,ruby,devise,routes,Ruby On Rails,Ruby,Devise,Routes,我正在制作一个人们可以分享东西的平台。我有一个问题,当人们登录,因为我想重定向到一个特殊的页面,但我不能找出它,希望有人能帮助我 我还有另一个问题,因为我想在导航栏上创建一个页面,人们登录后可以在那里看到他们的pin。我已经找到了他们在哪里可以看到所有的引脚,但可以找到如何显示自己的引脚。我的想法是使用: <li><%= link_to "Home", pin_path %></li> 耙路径如下所示: users_sh
<li><%= link_to "Home", pin_path %></li>
耙路径如下所示:
users_show GET /users/show(.:format) users#show
pins GET /pins(.:format) pins#index
POST /pins(.:format) pins#create
new_pin GET /pins/new(.:format) pins#new
edit_pin GET /pins/:id/edit(.:format) pins#edit
pin GET /pins/:id(.:format) pins#show
PUT /pins/:id(.:format) pins#update
DELETE /pins/:id(.:format) pins#destroy
thank_you_inquiries GET /inquiries/thank_you(.:format) inquiries#thank_you
inquiries POST /inquiries(.:format) inquiries#create
new_inquiry GET /inquiries/new(.:format) inquiries#new
new_user_session GET /users/sign_in(.:format) devise/sessions#new
user_session POST /users/sign_in(.:format) devise/sessions#create
destroy_user_session DELETE /users/sign_out(.:format) devise/sessions#destroy
cancel_user_registration GET /users/cancel(.:format) devise/registrations#cancel
user_registration POST /users(.:format) devise/registrations#create
new_user_registration GET /users/sign_up(.:format) devise/registrations#new
edit_user_registration GET /users/edit(.:format) devise/registrations#edit
PUT /users(.:format) devise/registrations#update
DELETE /users(.:format) devise/registrations#destroy
user /users/:id(.:format) users#show
about GET /about(.:format) pages#about
contact GET /contact(.:format) pages#contact
profile /profile(.:format) profile#show
root / pages#home
希望有人能帮我解决我的两个问题您必须将:id添加到pin_path,如下所示: pin_路径pin.id
1若要在登录后重定向到特定页面,您应在应用程序控制器中的“”中重写“”中“”的“”后“”中“”的“”路径“”。在这种情况下,请将当前“”用户“”路径替换为要重定向到的页面:
def after_sign_in_path_for(resource)
current_user_path
end
[来源
2如果只想显示当前登录用户的PIN,则应修改PIN_controller.rb,以便索引操作仅显示用户PIN:
def index
@pins = current_user.pins
end
然后链接到导航栏中的pins_路径
<li><%= link_to "Home", pins_path %></li>
这也给了我一个错误:未定义的局部变量或pin GET/pins/:id的方法“pin”:format pins如何定义资源,在我看来,你应该在routs.rb中定义资源,类似这样的内容:resource:pin在你定义路由时,你必须用pin id调用pin_path,pint_path1,其中1是pin id关于这里的路由:我已经在Github上发送了一个pull请求和我的评论。请确保@maringan也合并了这个请求,它修复了navbar链接的问题。
<li><%= link_to "Home", pins_path %></li>
before_action :authenticate_user!