Subscriber
モデルでは、 "phone_number"と "visit"の整数が使用されています。私は2つのコントローラSubscribers
とVisits
(スーパーとサブ)を持っています。これまでネストされたコントローラでは一度も働いたことがなく、私は信じる名前空間にいくつか問題があります。なぜなら私は初期化されていない定数エラーを取り戻すからです。基本的に、加入者コントローラは加入者にサインアップし、訪問コントローラは、自分のphone_numberのユーザ入力によって訪れた時間をカウントする。なぜこのエラーが発生するのですか?分かりやすくするために私のコードを示します。レールのルーティングエラー - 初期化されていない定数SubscribersController
コントローラー
class Subscribers::VisitsController < ApplicationController
def new
@subscriber = Subscriber.new
end
def create
@subscriber = Subscriber.find_by_phone_number(params[:phone_number])
if @subscriber
@subscriber.visit += 1
@subscriber.save
redirect_to subscribers_visits_new_path(:subscriber)
else
render "new"
end
end
end
class SubscribersController < ApplicationController
def index
@subscriber = Subscriber.all
end
def new
@subscriber = Subscriber.new
end
def create
@subscriber = Subscriber.create(subscriber_params)
if @subscriber.save
flash[:success] = "Subscriber Has Been successfully Created"
redirect_to new_subscriber_path(:subscriber)
else
render "new"
end
end
ROUTES
Rails.application.routes.draw do
devise_for :users
resources :subscribers, except: :show
get '/subscribers/visits/new', to: 'subscribers/visits#new'
root "welcomes#index"
VIEWS
<h1>hey</hey>
<%= form_for @subscriber do |form| %>
<div class="form-group">
<p>
<%= form.label :phone_number %>
<%= form.text_field :phone_number %>
</p>
<% end %>
ERROR
これら2つのコントローラに 'routes.rb'を貼り付けることはできますか? – kasperite
あなたのためのルートを手に入れました – Bitwise
Visitsコントローラの目的は何ですか?あなたはサブスクライバコントローラ内で訪問行動をしてから、「サブスクライバ#訪問」へのルートを持っていて、そこの訪問フィールドを更新できませんか? –