{"id":1157,"date":"2015-08-05T07:30:15","date_gmt":"2015-08-05T07:30:15","guid":{"rendered":"http:\/\/www.honobono-life.info\/wpeng\/?p=1157"},"modified":"2015-08-05T07:30:15","modified_gmt":"2015-08-05T07:30:15","slug":"delete-micropost-with-angularjs","status":"publish","type":"post","link":"http:\/\/www.honobono-life.info\/wpeng\/delete-micropost-with-angularjs\/","title":{"rendered":"Ruby on Rails Tutorial delete micropost with AngularJS"},"content":{"rendered":"<p><strong>(1)Rails controller<\/strong><\/p>\r\n\r\n<p>$ vi app\/controllers\/microposts_controller.rb<\/p>\r\n\r\n<pre class=\"prettyprint\">\r\n  before_action :signed_in_user, only: [:create, :destroy]\r\n  before_action :correct_user,   only: :destroy\r\n\r\n  def destroy\r\n    Micropost.find(params[:id]).destroy\r\n    head :no_content\r\n  end<\/pre>\r\n\r\n<p><strong>(2)add link to views<\/strong><\/p>\r\n\r\n<p>$ vi app\/assets\/templates\/static_pages\/home.html.erb<br \/>\r\n$ vi app\/assets\/templates\/users\/show.html.erb<\/p>\r\n\r\n<div ng-non-bindable><pre class=\"prettyprint\">\r\n.....\r\n&lt;small class=&quot;text-muted&quot;&gt;Posted {{mp.created_at | date:&#39;medium&#39;}}&lt;\/sm\r\nall&gt;\r\n&lt;span ng-show=&quot;chkSignin().user.id == mp.user_id&quot;&gt;&lt;a href=&quot;&quot; ng-click=&quot;delete(mp.id)&quot;&gt;delete&lt;\/a&gt;&lt;\/span&gt;\r\n.....<\/pre><\/div>\r\n\r\n<p><strong>(3)AngularJS controller<\/strong><\/p>\r\n\r\n<p><strong>1)User Profile page &quot;UsersShowCtrl&quot; controller<\/strong><\/p>\r\n\r\n<p>$ vi app\/assets\/javascripts\/mymodule.js.erb<\/p>\r\n\r\n<pre class=\"prettyprint\">\r\nmyModule.controller(&quot;UsersShowCtrl&quot;, function($scope, $routeParams, userResource,flashService,micropostsResource) {\r\n\r\n  $scope.chkSignin = function() {\r\n    return flashService.getUser();\r\n  };\r\n\r\n  $scope.delete = function(id) {\r\n    micropostsResource.destroy({ id: id });\r\n    userResource.show({ id: $routeParams.id }, function(response) {\r\n      $scope.user_info = response;\r\n      $scope.totalitems = $scope.user_info.microposts.length;\r\n      microposts = $filter(&#39;orderBy&#39;)($scope.user_info.microposts,&#39;created_at&#39;,true);\r\n      $scope.currentitems = microposts.slice(start,end);\r\n      flashService.setUser(response);\r\n    });\r\n  };\r\n});<\/pre>\r\n\r\n<p><strong>2)Home page &quot;HomeCtrl&quot; controller<\/strong><\/p>\r\n\r\n<pre class=\"prettyprint\">\r\n  $scope.delete = function(id) {\r\n    micropostsResource.destroy({ id: id });\r\n    sessionResource.current_user({}, function(response) {\r\n      tmp_feed = response.feed;\r\n      $scope.totalitems = tmp_feed.length;\r\n      feed_items = $filter(&#39;orderBy&#39;)(tmp_feed,&#39;created_at&#39;,true);\r\n      $scope.currentitems = feed_items.slice(start,end);\r\n      flashService.setUser(response);\r\n    });\r\n  };\r\n<\/pre>\r\n","protected":false},"excerpt":{"rendered":"<p>(1)Rails controller $ vi app\/controllers\/microposts_controller.rb before_action :signed_in_user, only: [:create, :destroy] before_action :correct_user, only: :destroy def destroy Micropost.find(params[:id]).destroy head :no_content end (2)add link to views $ vi app\/assets\/templates\/static_pages\/home.html.erb $ vi app\/assets\/templates\/users\/show.html.erb &#8230;.. &lt;small class=&quot;text-muted&quot;&gt;Posted {{mp.created_at | date:&#39;medium&#39;}}&lt;\/sm all&gt; &lt;span ng-show=&quot;chkSignin().user.id == mp.user_id&quot;&gt;&lt;a href=&quot;&quot; ng-click=&quot;delete(mp.id)&quot;&gt;delete&lt;\/a&gt;&lt;\/span&gt; &#8230;.. (3)AngularJS controller 1)User Profile page &quot;UsersShowCtrl&quot; controller $ vi app\/assets\/javascripts\/mymodule.js.erb myModule.controller(&quot;UsersShowCtrl&quot;, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[137],"tags":[35,177,176,178],"amp_enabled":true,"_links":{"self":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts\/1157"}],"collection":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/comments?post=1157"}],"version-history":[{"count":1,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts\/1157\/revisions"}],"predecessor-version":[{"id":1158,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/posts\/1157\/revisions\/1158"}],"wp:attachment":[{"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/media?parent=1157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/categories?post=1157"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.honobono-life.info\/wpeng\/wp-json\/wp\/v2\/tags?post=1157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}