Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails中的AngularJS过滤器_Ruby On Rails_Angularjs_Angularjs Ng Repeat - Fatal编程技术网

Ruby on rails rails中的AngularJS过滤器

Ruby on rails rails中的AngularJS过滤器,ruby-on-rails,angularjs,angularjs-ng-repeat,Ruby On Rails,Angularjs,Angularjs Ng Repeat,我正在尝试在我制作的RubyonRails应用程序上创建一个帖子的可搜索列表。我有AngularJS在处理这个应用程序。所有的帖子都保存在@posts中的rails上。我怎样才能让AngularJS过滤掉这个? 以下是相关观点: <h1>Posts</h1> <div ng-app> <div ng-controller = "PostCtrl"> <input placeholder = "Search Post Tit

我正在尝试在我制作的RubyonRails应用程序上创建一个帖子的可搜索列表。我有AngularJS在处理这个应用程序。所有的帖子都保存在@posts中的rails上。我怎样才能让AngularJS过滤掉这个? 以下是相关观点:

<h1>Posts</h1>
<div ng-app>
    <div ng-controller = "PostCtrl">
      <input placeholder = "Search Post Titles", ng-model="searchText">
        <div ng-repeat="post in posts | filter:searchText">
          <h2>{{post.title}}</h2>
          <p>{{post.text}}</p>
        </div>
    </div>
</div>
帖子
{{post.title}
{{post.text}


我不知道如何用@posts中的对象填充角度数组posts。

您的代码似乎可以按原样工作。这似乎重新创建了您的代码

如果要在post对象内部进行筛选,可以使用以下语法:

ng-repeat="post in posts | filter:{ text: searchText }"

上面只搜索
post

text
属性的值。继续Davin Tryon的答案,您可以这样尝试。 首先在控制器中使用ng init=“init()”:

<div ng-controller = "PostCtrl" ng-init="init( <%= @posts.to_json %> )">
然后posts将是一个JavaScript对象,可以在您的范围内访问它,就像您使用angular resource查询它一样


如果您想包含帖子的关联(比如评论),您可以检查to_json(或“as_json”)和:include选项,问题是所有帖子都存储在我的rails控制器的@posts中。如何通过角度控制器访问它们?
$scope.init = (posts) ->
    $scope.posts = angular.fromJson(posts)