sinatraは私が使用する "コード"を認識できないように見えますが、それは文字列に入れても役に立たないのですか?引用符を取り除くと、それらは初期化されていないメソッドになります。ヘルプは大歓迎です!sinatraとrubyのドロップダウンボックスから値を渡す
require 'sinatra'
require 'sinatra/reloader'
require 'data_mapper'
enable :sessions
DataMapper.setup(:default, "sqlite://#{Dir.pwd}/project3.db")
class Code
include DataMapper::Resource
property :id, Serial
property :language, String
property :purpose, String
property :code_snippet, Text
end
DataMapper.auto_upgrade!
get "/snippet" do
erb :snippet, layout: :project3_template
end
post "/snippet" do
Code.create params
redirect to ("/library")
end
get "/library" do
@html = Code.all(language: HTML)
@css = Code.all(language: CSS)
@javascript = Code.all(language: Javascript)
@ruby = Code.all(language: Ruby)
erb :library, layout: :project3_template
end
get "/library/:id" do
@code = Code.get :id
erb :code_id, layout: :project3_template
end
私のerbページ
<h1>Code Library</h1>
<h2>HTML</h2>
<%= @html.each do |code| %>
<a href="/library/<%= code.id %>"><%= code.purpose %></a>
<hr>
<%= end %>
<h2>CSS</h2>
<%= @css.each do |code| %>
<a href="/library/<%= code.id %>"><%= code.purpose %></a>
<hr>
<%= end %>
<h2>Javascript</h2>
<%= @javascript.each do |code| %>
<a href="/library/<%= code.id %>"><%= code.purpose %></a>
<hr>
<%= end %>
<h2>Ruby</h2>
<%= @ruby.each do |code| %>
<a href="/library/<%= code.id %>"><%= code.purpose %></a>
<hr>
<%= end %>
ありがとう、大変ありがとうございます! –