Я отчасти новичок в реализации рельсов с угловыми js. То, что я хочу, у меня есть индексная страница листинга, который дает мне все списки с помощьюФильтрация Выход рельсов с угловыми фильтрами
Listing.all
Моей страница имеет несколько фильтров в it.Lets сказать, у меня есть фильтр пола, так что мне было нужно, когда что выпадающим изменение страницы с листингами в ней также должно быть обновлено и теперь отображать только списки с выбранным полом.
Вот что я сделал: -
/application.js/
//= require jquery
//= require jquery_ujs
//= require semantic-ui
//= require dropzone
//= require cloudinary
//= require angular
//= require angular-resource
//= require app.js
//= require_tree ./angular
//= require_tree .
/ListingController (рельсы)/
def index
@listings=Listing.all
end
/index.html .erb/
<%=select(:listing,:gender,options_for_select([['Male','Male',{class:'item'}],['Female','Female',{class:'item'}]]),{prompt:'Gender'},{:'ng-model'=>'listing.gender',class:'ui dropdown gender'})%>
<div class="ui divided items" ng-controller="ListingCtrl" ng-init="init(<%= @listings.to_json %>)" ng-repeat="listing in listings | filter:listing.gender">
<div class="item">
<div class="image">
<img src={{listing.photos.first.file_name.url}} class="header"/>
</div>
<div class="content">
<%=link_to '{{listing.title}}','{{listing}}',class:'header'%>
<div class="meta">
<span class="cinema">Posted On
</span>
</div>
<div class="description">
<p>
<%='{{listing.love_for_pets}}'%>
</p>
</div>
<div class="extra">
<div class="ui teal tag label"><i class="rupee icon"></i><%='{{listing.price}}'%></div>
</div>
</div>
</div>
</div>
/угловые/Контроллеры/ListingController.js/
app.controller('ListingCtrl', ['$scope', '$resource', function($scope, $resource) {
$scope.init = (listings)
{
$scope.listings = angular.fromJson(listings)
}
}]);
/app.js/
var app = angular.module("PetForLife", ['ngResource'])
/Gemfile/
gem 'angularjs-rails'
Индексная страница загружается, но списки не отображаются, также нет ошибок на консоли.
Может кто-нибудь, пожалуйста, помогите мне с этим?
Я добавил ng-приложение в тег html в файле application.html.erb, извините, что забыл его поместить. Также я чувствую, что это может быть его некоторая ошибка маршрутизации. –
С угловой я не думаю, что вы должны пытаться вставлять данные на страницу, как обычно, с рубином. Вам действительно нужно передать данные угловым и разрешить угловую ручку. Весь смысл использования углового состоит в том, что вы отделяете фокус от представления. – tpie
проверить мой обновленный ответ на некоторые дополнительные сведения ... – tpie