質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

1回答

436閲覧

Railsでトップページから他のトップページに移動することはできるのでしょうか?

koume

総合スコア458

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

1クリップ

投稿2017/11/10 12:16

Rails5.1.3でWebアプリケーション制作の勉強をしています。「管理者ページ」、「職員ページ」、「顧客ページ」、「新規登録ページ」を
個別に作成しました。
「管理者ページ」、「職員ページ」の2つについては別々にアクセスできればいいので問題ありませんが
「顧客ページ」、「新規登録ページ」のページに関しては選択できるページを作りたいのですが上手くいきません。
このようなイメージです。
イメージ説明
doors_controller.rbとhome.html.erbを作りroutes.rbで表示しようとしてもうまくいきません。

routes.rb get 'doors', to: 'doors#home' root to: 'doors#home'

このように記述してもエラーが出てしまい解決できません。routes.rbの全体のコードは以下になります。

routes.rb Rails.application.routes.draw do config = Rails.application.config.chibi  get 'door', to: 'door#home'  root to: 'door#home' constraints host: config[:staff][:host] do namespace :staff, path: config[:staff][:path] do root 'top#index' get 'login' => 'sessions#new', as: :login resource :session, only: [ :create, :destroy ] resource :account, except: [ :new, :create, :destroy ] do patch :confirm end resource :password, only: [ :show, :edit, :update ] resources :customers resources :registers resource :bank resources :programs do patch :entries, on: :member end resources :messages, only: [ :index, :show, :destroy ] do get :inbound, :outbound, :deleted, :count, on: :collection post :tag, on: :member delete :tag, on: :member resource :reply, only: [ :new, :create ] do post :confirm end end resources :tags, only: [] do resources :messages, only: [ :index ] do get :inbound, :outbound, :deleted, on: :collection end end end end constraints host: config[:admin][:host] do namespace :admin, path: config[:admin][:path] do root 'top#index' get 'login' => 'sessions#new', as: :login resource :session, only: [ :create, :destroy ] resources :staff_members do resources :staff_events, only: [ :index ] end resources :staff_events, only: [ :index ] resources :allowed_sources, only: [ :index, :create ] do delete :delete, on: :collection end end end constraints host: config[:customer][:host] do -------------------ここから顧客のルーティング namespace :customer, path: config[:customer][:path] do root 'top#index' get 'login' => 'sessions#new', as: :login resource :session, only: [ :create, :destroy ] resource :account, except: [ :new, :create, :destroy ] do patch :confirm end resource :register, only: [ :show ] resource :seventeen, only: [ :show ] resource :eighteen, only: [ :show ] resource :nineteen, only: [ :show ] resource :twentie, only: [ :show ] resource :one, only: [ :show ] resource :score, only: [ :show ] resource :sponsor, only: [ :show ] resource :special, only: [ :show ] resource :member, only: [ :show ] resource :point, only: [ :show ] resource :bank, except: [ :destroy ] do patch :confirm end resources :programs, only: [ :index, :show ] do resources :entries, only: [ :create ] do patch :cancel, on: :member end end resources :messages, except: [ :edit, :update ] do post :confirm, on: :collection resource :reply, only: [ :new, :create ] do post :confirm end end resource :record do get :individual get :bonus_record get :bonus_title get :sponsor_point get :bonus_point get :quarter_point get :bonus_money end resource :rule do get :agreement get :how_to_use get :maintenance get :unsubscribe get :privilege get :lapse get :cache get :bonus get :privilege_bonus get :question get :personal get :account get :mouse end end end constraints host: config[:visitor][:host] do ---------------ここから新規登録のルーティング namespace :visitor, path: config[:visitor][:path] do root 'top#index' resources :customers resource :rule do get :agreement get :how_to_use get :maintenance get :unsubscribe get :privilege get :lapse get :cache get :bonus get :privilege_bonus get :question get :personal get :account get :mouse end resources :customers end end root 'errors#routing_error' get '*anything' => 'errors#routing_error' end
doors_controller.rb class DoorsController < ApplicationController def home end end
home.html.erb <% @title = 'トップページ' %> <h1><%= @title %></h1> <p>サイトの説明  # http://example.con:3000/mypageで個別に顧客ページにアクセスはできます。 <%= link_to(image_tag("haunted-castle-859390_640.png", size: "60*60", alt: "顧客ページ", align: "top") :http://example.con:3000/mypage) %></p>  # http://example.com:3000/visitorで個別に新規登録ページにアクセスはできます。 <p> <%= link_to(image_tag("key-2114046=640.png", size: "60*60", alt: "新規登録", align: "top") :http://example.com:3000/visitor) %> </p>

解決したい問題
1,ルーティングはどう記述するのか?(コードが知りたい。)

2,home.html.erbの記述で他のコントローラのページを呼び出せるのか?

前回の質問で丁寧に回答をしていただきましたが解決できなかったのでもう一度質問させていただきました。

どなたか教えていただけないでしょうか?宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

welcome.html.erbをvisitoe/viewに作成しアクションも作成し実行したら
呼び出すことができました。高度なことは全くできないので工夫しながら
進めていきます。

投稿2017/11/10 15:15

koume

総合スコア458

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問