Ruby Sinatra中的可编辑.txt文件
使用Ruby Sinatra框架,我创建了两个页面,“主页”和“创建”。我的主页显示目录中.txt文件中的内容。在“创建”页面中,我需要一个显示现有.txt文件并可编辑和保存的表单,以便主页显示更新表单的人(很像wiki)。我该怎么办 wiki.rb当前的内容是:Ruby Sinatra中的可编辑.txt文件,ruby,sinatra,Ruby,Sinatra,使用Ruby Sinatra框架,我创建了两个页面,“主页”和“创建”。我的主页显示目录中.txt文件中的内容。在“创建”页面中,我需要一个显示现有.txt文件并可编辑和保存的表单,以便主页显示更新表单的人(很像wiki)。我该怎么办 wiki.rb当前的内容是: get '/' do @logfile = File.open("logfile.txt","r") erb :home end get '/create' do # I do not know what to put
get '/' do
@logfile = File.open("logfile.txt","r")
erb :home
end
get '/create' do
# I do not know what to put here
end
我的雇员再培训局是这样写的:
主页:
内容:
创建:
<h2>Edit your content:</h2>
<form action="/" method="post">
#I know I have to embed the logfile here somewhere?
Content:<input type="textarea" name="content"><br>
<input type="submit" value="Save">
</form>
编辑您的内容:
#我知道我必须把日志文件埋在这里的某个地方?
内容:
编辑:
你的方法是这样的
get '/create' do
@logfile = File.open("logfile.txt","r")
@contents = @logfile.read
@logfile.close
erb :create
end
post '/create' do
@logfile = File.open("logfile.txt","w")
@logfile.truncate(@logfile.size)
@logfile.write(params[:file])
@logfile.close
redirect '/create'
end
<form action="/create" method="post">
<input type="text" name="file" value="<%= @contents %>">
<input type="submit" value="Save">
</form>
您的create.erb将如下所示
get '/create' do
@logfile = File.open("logfile.txt","r")
@contents = @logfile.read
@logfile.close
erb :create
end
post '/create' do
@logfile = File.open("logfile.txt","w")
@logfile.truncate(@logfile.size)
@logfile.write(params[:file])
@logfile.close
redirect '/create'
end
<form action="/create" method="post">
<input type="text" name="file" value="<%= @contents %>">
<input type="submit" value="Save">
</form>