我先说我相信我在这里犯了很多错误。我正在尝试编写一个愚蠢的libs类型程序,用户可以在其中更改配方。首先,我有以下方法来创建疯狂的lib。
def madlib_recipe
recipe = "recipe text"
#tag words
tagger = EngTagger.new
recipe = tagger.add_tags(recipe, true)
#create for textboxes
recipe = recipe.split(".")
i=0
recipe.map! do |sentence|
size = sentence.size
sentence = sentence.split(" ").map! do |word|
i+=1
word.size.odd? && word.size<40 && word.include? ('punctuation') == false && word.include?('determiner') == false ?
word = "<input type='text' size='#{word[/<.+?>/].size}'' name='text#{i}' style='border:1px dotted gray;' placeholder='#{word[/<.+?>/]}'>" : word
end
sentence = sentence.join(" ")
end
recipe.join(".")
end
然后我有以下路线的erb视图:
get '/nine' do
@name = 'DIY'
@content = madlib_recipe
erb :dyi
end
在:dyi
视图中,我有以下隐藏输入:
<div text-align:justify;><%=@content%></div>
<input type ='hidden' name='recipe' value= <%=@content"%>>
除了隐藏输入显示@content
实例变量的内容这一事实外,一切正常,当我解析后路上的参数时@contents
值没有显示。作为一个新手,我相信我在这里做出各种可怕的决定,我期待着得到纠正。