23791


homeコントローラーで、timelineコントローラーで定義したtimelineアクションを呼び出したいです。

timeline_controller.rbにほ

[code]

    class TimelineController < ApplicationController
        def timeline
         @timeline=Timeline.all
        end
    end
    
[/code]

とtimelineアクションを定義しました。  
home_controller.rbのtopアクションでそれを呼び出したいです。

home_controller.rbには

[code]

    class HomeController < ApplicationController
      def top
        if user_signed_in?
          # 変数@noteにNoteクラスのインスタンスを代入してください
          @note = Note.new
          # 変数@notesにNoteクラスのインスタンスの配列を降順で代入してください
          @notes = Note.all.order(created_at: :desc)
    
       　　@timeline=Timeline.all←ここで定義
     　　　
        else
          @message = "ようこそKotoritterへ！"
        end
      end
    
      def about
      end
    end
    
[/code]

と記載しました。  
しかしUnknown action The action 'timeline' could not be found for HomeController
とエラーが出ました。  
topアクションで記述したtimelineアクションが間違っているのでしょうか？


CC BY-SA 3.0
2016-04-06T04:40:19.450
23783
2016-04-06T07:35:59.830
14754
question
ruby-on-rails
コントローラーでアクションの呼び出し


> Unknown action The action 'timeline' could not be found for HomeController

なので、  
HomeController に timeline というメソッド(アクション)がない!  
というエラーだと思うので

多分

[code]

    class HomeController < ApplicationController
      def timeline
        @timeline=Timeline.all
      end
      ...
    end
    
[/code]

みたいに HomeController の中に def timeline を入れれば  
このエラーは出なくなると思います

ただ、作られているアプリケーション全体が見えないので、  
この対応が正しいのかまでは分かりません。

仮に上の対応をした場合  
なんとなく、Home の timeline に対応するビューがなくて  
エラーだったり、想定通りでない動作が出る気がします。

多分、勉強中で色々分かってない状態で書いていらっしゃると思うのですが、  
「homeコントローラー」、「timelineコントローラー」という言葉は、  
一般的じゃない言葉なので、解答が難しいんじゃないかと思います。

「本」という言葉は、普通誰でも知っていると思いますが、  
具体的な本の名前の「いつかティファニーで朝食を」とか  
「ぐりとぐら」とかは、  
相手が知っているかどうか分かりません。  
なので、いきなり「いつかティファニーで朝食を」とか  
「ぐりとぐら」と言われても、  
よく分からないという状況になっているのかと思います。

もし、初学者なら入門書に書いてあるプログラムを  
コピペとかコピーすればそのまま動く様なやつから  
初めるのがいいかもしれません。

それよりも、直接会える人で、  
知っている人がいれば一番いいと思いますけど  
難しいのかもしれませんね。

あと Rails はそんなに簡単じゃないかなと思います。  
というか、どのぐらいの完成度を目指すかによると思いますが、  
WEBアプリケーション自体がそんなに簡単だと思いません。

Rails についていうと、チュートリアルをコピペで動かしている間は、  
人によっては簡単に感じると思いますが、  
チュートリアルに出てない自分の知らないパターンの  
変更しようとすると、急激に難しくなる印象があります。


CC BY-SA 3.0
2016-04-06T07:25:44.110
23791
2016-04-06T07:35:59.830
2016-04-06T07:35:59.830
15007
15007
23783
answer