deviceを用いてログイン機能を実装しています。
application_controller
def after_sign_up_path_for(resource) if customer_signed_in? root_path else admin_root_path end end
admin/top_controller.rb
class Admin::TopController < ApplicationController before_action :authenticate_admin! def top @orders = Order.where("created_at >= ?", Date.today) end end
views/admin/registrations/new.html.erb
<div class="container"> <div class="row mt-5"> <div class="col-xs-4 col-xs-offset-4"> <h2>管理者サインアップ</h2> <%= form_for(resource, as: resource_name, url: admin_registration_path) do |f| %> <div class="field"> <%= f.label :email %><br /> <%= f.email_field :email, autofocus: true, autocomplete: "email" %> </div> <div class="field"> <%= f.label :password %> <% if @minimum_password_length %> <em>(<%= @minimum_password_length %> characters minimum)</em> <% end %><br /> <%= f.password_field :password, autocomplete: "new-password" %> </div> <div class="field"> <%= f.label :password_confirmation %><br /> <%= f.password_field :password_confirmation, autocomplete: "new-password" %> </div> <div class="actions"> <%= f.submit "Sign up" %> <%= render "admin/shared/links" %> </div> <% end %> </div> </div>
views/admin/top.html.erb
<div class="container"> <div class="row"> <div class="col-xs-4 col-xs-offset-3"> <h2>管理者画面</h2> </div> </div> <div class="row"> <div class="col-xs-3">本日の注文件数</div> <div class="col-xs-9"> <%= link_to @orders.count, admin_orders_path %> 件 </div> </div> </div>
routes.rb
namespace :admin do root 'top#top' * *
このようなエラーが出てしまいました。
また、この時のURLが/adminとなって欲しいのですが/admin.adminとなってしまっています。
おそらくここが原因だと思ったのですが、調べてもわからず困っています。
どなたか教えていただけるとありがたいです。
現状URLに直接/adminと打ち込んだ場合はtop.html.erbが表示されます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。