2014-10-10 19 views
1

如何使用truncate方法檢索所有模型中的數據?Rails4:如何使用truncate方法獲取檢索的Model.all數據?

我想截斷文章模型中的content數據,如<%= truncate(content, length: 50) %>

\意見\文章\ index.html.erb

<ul class="users"> 
    ... 
    <%= render @articles %> 
    ... 
</ul> 

\控制器\ article_controller.rb

class ArticlesController < ApplicationController 

    def index 
    @articles = Article.all(limit: 10) 
    end 
    ... 

文章表

sqlite> .schema articles 
CREATE TABLE "articles" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "content" varchar(255),"user_id" integer, "created_at" datetime, "updated_at" datetime, "category_id" integer); 
+0

那麼'<%= truncate(content,length:50)%>'不工作?這應該截斷'內容'數據。 http://apidock.com/rails/ActionView/Helpers/TextHelper/truncate – Nerian 2014-10-10 22:03:44

+2

當您執行<%= render @articles%>時,Rails將嘗試使用_article部分渲染每篇文章。 「views \ articles \ _article.html.erb」的外觀如何? – Nerian 2014-10-10 22:07:05

+0

它的工作原理!謝謝@ Nerian。我在'views \ articles \ article.html中改變了我的代碼,如'<%= simple_format(truncate(article.content,length:50))%>'而不是'<%= simple_format(article.content)%>。 erb'。 – SamuraiBlue 2014-10-11 02:19:44

回答

2

正如在評論中提到的,因爲您正在使用

<%= render @article %> 

Rails會尋找一個_Article的意見/文章目錄部分,所以你必須創建一個,如果您尚未創建一個已經和這將是類似的東西

的意見/用品/ _article.html。 erb

<%= truncate(article.content, :length => 50) %> 
. 
. 
+0

它的工作原理!謝謝@Aalaa Mohamed。我在'views \ articles \ article.html中改變了我的代碼,如'<%= simple_format(truncate(article.content,length:50))%>'而不是'<%= simple_format(article.content)%>。 erb'。 – SamuraiBlue 2014-10-11 02:18:49

+0

歡迎您:) – 2014-10-11 02:48:37

相關問題