我對Rails世界相當陌生,而且我一直在這個問題上停留了一段時間。我正在使用Twitter Bootstrap作爲我的框架,並且我正在嘗試構建一個基本網站,並通過選擇框排序/過濾表格。我創建了表格,但我無法獲得選擇框來過濾它。我已經嘗試了幾件事情,包括DataTables gem,它無法正常工作。我不知道我需要用什麼來完成這項工作。選擇框在Rails中排序表
如果你可以讓我通過一個基本網站,並通過選擇框對錶格進行排序/篩選,那就太棒了。
我對Rails世界相當陌生,而且我一直在這個問題上停留了一段時間。我正在使用Twitter Bootstrap作爲我的框架,並且我正在嘗試構建一個基本網站,並通過選擇框排序/過濾表格。我創建了表格,但我無法獲得選擇框來過濾它。我已經嘗試了幾件事情,包括DataTables gem,它無法正常工作。我不知道我需要用什麼來完成這項工作。選擇框在Rails中排序表
如果你可以讓我通過一個基本網站,並通過選擇框對錶格進行排序/篩選,那就太棒了。
我按照這個教程計算出來的,但是我必須做一些改變才能使它適用於我,因爲我需要選擇框。 http://railscasts.com/episodes/240-search-sort-paginate-with-ajax?view=asciicast
這是我的新代碼:
index.html.erb
<form class="form-inline"
<p>
<select name="state_search" class="span2">
<option value="">Select a State</option>
<option>----------------</option>
<option>LA</option>
<option>MS</option>
<option>TX</option>
</select>
<select name="city_search" class="span2">
<option value="">Select a City</option>
<option>----------------</option>
<option>Mandeville</option>
<option>Covington</option>
</select>
<button type="submit" class="btn">GO</button>
</p>
</form>
<table class="table table-striped table-bordered span8 table-condensed"
id="articles_table" >
<thead class="header">
<tr>
<th>ID</th>
<th>Title</th>
<th>Description</th>
<th>Created_At</th>
</tr>
</thead>
<tbody>
<%= render @articles %>
</tbody>
_article.html.erb
<tr>
<td> <%= article_counter +1 %> </td>
<td> <%= article.Title %> </td>
<td> <%= article.Description %> </td>
<td> <%= article.Created_At %> </td>
</tr>
articles_controller.rb
def index
@articles = Article.state_search(params[:state_search]).city_search(params[:city_search]).page(params[:page]).limit(50).order('Created_At DESC')
respond_to do |format|
format.html # index.html.erb
format.json { render json: @articles }
format.js
end
end
articles.rb
def self.city_search(city_search)
if city_search
where('City LIKE ?', "%#{city_search}%")
else
scoped
end
end
def self.state_search(state_search)
if state_search
where('State LIKE ?', "%#{state_search}%")
else
scoped
end
end
所以要開始,我創建了一個局部渲染,就像在情節內容的表格。然後我創建了兩個選擇框並給了它們名字。一個是state_search和另一個city_search。然後,我進入articles.rb並定義了這些名稱。這是在railscasts插曲中完成的同樣的事情,除了我用我的名字替換了這些名字。接下來,我進入articles_controller.rb並將兩個搜索添加到它,就像在railscasts插曲中一樣。 這樣做後,兩個選擇框完美工作,並對錶格進行排序/過濾。
謝謝
您可以發佈您的.erb模板到目前爲止? – cdesrosiers
您可能不得不使用這個過程。告訴我們你的相關代碼。在選擇菜單更改時,更新列表並使用ajax重新呈現表格。類似的案例http://stackoverflow.com/questions/11327282/rails-ajax-getting-a-dropdown-selection-to-populate-a-table –
那麼,你想要我發佈什麼文件? – jackadanos