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

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

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

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

Sinatra

Sinatraは、Rubyで作られた オープンソースのWebアプリケーションフレームワークです。

Q&A

0回答

443閲覧

Sinatraのmvcモデルでmapが働いていない

sanyagi_d_1

総合スコア10

Ruby

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

Sinatra

Sinatraは、Rubyで作られた オープンソースのWebアプリケーションフレームワークです。

0グッド

0クリップ

投稿2020/05/20 12:56

現在、オライリー本の『入門Sinatra』で学習しています。
p.168-175でコードを入力しディレクトリを設計したのですが上手くいきません。

エラーコード:config.ru:4:in <main>': undefined method map' for main:Object (NoMethodError)
Did you mean? tap
と出ているためタイトルのように考えました。

Ruby

1# config.ru 2 3require 'sinatra/base' 4Dir.glob('./{helpers,controllers}/*.rb').each { |file| require file } 5 6map('/example') { run ExampleController } 7map('/') { run ApplicationController }

Ruby

1# application_controller.rb 2 3class ApplicationController < Sinatra::Base 4 helpers ApplicationHelper 5 6 set :views, File.expand_path('../../views', __FILE__) 7 8 configure :production, :development do 9 enable :logging 10 end 11 12 not_found do 13 title 'Not Found!' 14 erb :not_found 15 end 16end

Ruby

1# example_controller.rb 2 3class ExampleController < ApplicationController 4 get '/' do 5 title "Example Page" 6 erb :example 7 end 8end

Ruby

1# application_helper.rb 2 3module ApplicationHelper 4 def title(value = nil) 5 @title = value if value 6 @title ? "Controller Demo - #{@title}" : "Controller Demo" 7 end 8end

HTML

1# layout.erb 2 3<html> 4 <head> 5 <title><%= title %></title> 6 </head> 7 <body> 8 <%= yield %> 9 </body> 10</html>

HTML

1# example.erb 2 3<h1>This is an example page!</h1>

HTML

1#not_found.erb 2 3Page does not exist! Check out the <a href='/example'>example page</a>.

イメージ説明

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問