1
Ruby on Railsを使用していますが、セッションにハッシュを保存しようとすると何らかの理由でページ間で転送されませんが、テスト変数は実行されます。コードは以下の通りである:セッション変数を保存していません
class HomeController < ApplicationController
require 'read_file'
def index
session[:test] = 1
end
def uploadDictionary
#post = ReadFile.read(params['dictionary'])
file = params['dictionary']
wordHash = Hash.new(0)
file.read.each_line do |line|
wordHash[line.downcase] = line.downcase
#session[:hmm] = line
#puts session[:hmm]
end
#wordHash.each { |key, value| puts key + ' = ' + value + "\n" }
session[:storedDictionary] = wordHash
#session[:storedDictionary].each { |key, value| puts key + ' = ' + value + "\n" }
puts session[:test]
redirect_to :action => "index"
end
def checkWord
session[:storedDictionary].each { |key, value| puts key + ' = ' + value + "\n" }
#puts session[:storedDictionary].key(params[:submittedWord].downcase)
puts session[:test]
render :text => "woot"
end
end
問題は、セッションです[:storedDictionary]、私は誰かが私にいくつかのアドバイスを与えることができる期待していますuploadDictionaryとチェックワード間で自分自身を維持しません。ありがとう。ビューコードを表示するための更新:
<h1>Home#index</h1>
<p>Find me in app/views/home/index.html.erb</p>
<%= form_tag({:action => :uploadDictionary}, :multipart => true) do %>
<%= file_field_tag 'dictionary' %>
<%= submit_tag "Upload" %>
<% end %>
<br>
<br>
<%= form_tag("/checkWord", :method => 'get') do %>
<%= text_field_tag 'submittedWord' %>
<%= submit_tag "checkWord" %>
<% end %>
残念ながら、私はすでに行っていること、それは問題を解決していない:この質問を参照してください。それはセッション[:テスト]だけでセッション[:storedDictionary] –
で動作し、両方のサービスを使用しているクライアントは正しくクッキーを受け入れます(セッションクッキー用)。 –
それはそれのように見えます、それはuploadDictionaryからインデックスにリダイレクトするときに起こるように見えます。 –