我正在構建我的第一個Rails應用程序,出於某種奇怪的原因,它似乎像用戶會話正在被扔掉,我不知道如何解決它。我的意思是,我的索引模板設置爲<% if user_signed_in? %>
爲真,他們只會看到應用程序及其所有數據,否則他們會看到一個註冊頁面。一切似乎工作,但當您登錄後刷新頁面,像註銷(destroy_user_session_path
)按鈕的東西就消失了。Rails應用程序用戶會話無法正常工作?
以下是我的代碼。忽略所有Angular的東西 - 我正在切換它,因爲我決定過早使用它。
<% if user_signed_in? %>
<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>
<div class="site_container" ng-controller="SubmissionsCtrl">
<div class= "row-fluid" id="indexrow">
<div class="span7">
<form id="postSubmit" action="/submissions" method="post">
<%= hidden_field_tag :user_id, current_user.id %>
<label for="titleinput">Title</label>
<input type="text" id="titleinput" name="title" placeholder="Title"></input>
<label for="contentinput">Content</label>
<textarea id="contentinput" rows="6" name="content" placeholder="What's on your mind?"></textarea>
<button type="submit" class="btn btn-primary" style="margin-top:10px">Save</button>
</form>
</div>
<div class="span5">
<div id="submission-list-container">
<ul id="indexSubmissions">
<% current_user.submissions.each do |i| %>
<%= i.title %>
<%= i.content %>
<% end %>
</li>
</ul>
</div>
</div>
</div>
</div>
<% else%>
<div id="intro_page_center">
<h2 id="big_intro">Explore your mind.</h2>
<div id="registration_login">
<a href="users/sign_in" class="sign_in_up">Log in</a>
<a href="users/sign_up" class="sign_in_up">Sign up</a>
</div>
<div id="about_container">
<ul id="about_braindb">
<li>
<h3>Save <small>Save stories, videos, recipes, and anything else that defines you.</small></h3>
</li>
<li>
<h3>Learn <small>Discover patterns, connections, and meaningful context in everything you save to BrainDB.</small></h3>
</li>
<li>
<h3>Grow <small>Utilize your newfound abilities to read your subconcious through idea generation, collaboration, and more.</small></h3>
</li>
</ul>
</div>
</div>
<% end%>
任何想法它可能是什麼?我在某處看到它可能與Rails 3安全性和我的POST表單提交有關,但是我丟失了頁面,並且找不到更多信息。
一個很好的開始就是告訴我們你是如何定義'user_signed_in?'的。 –
我正在使用Devise。 –
您可以在您的視圖中打印以下內容:「<%= session.inspect%>' –