samedi 7 janvier 2017

Angular/Laravel - outputting json data from mysql database

i am fetching data, that i want to output from mysql with laravel query builder and converting it to JSON format, as w3Schools suggested W3schools SQL link And afterwards printing fetched mysql data with AngularJS help, but it doesn't seem to do anything at all and it shows me a blank page.

Laravel route

Route::get('/' ,  [
    'as' => 'homepage',
    'uses' => 'indexController@main'
]);

IndexController

class IndexController extends Controller
{
    public function main(){
      $data =  json_encode(array('user_posts' =>\DB::table('posts')
                ->orderBy('added_on', 'desc')
                ->get()));

    return view('index', ['posts' => $data]);
    }

}

index.php view with AngularJS controller

<head>

            <!--Angulare -->
            <script src="http://ift.tt/1vCsXos"></script>
            <script src="http://ift.tt/1vCsXou"></script>
            <!--Applicazione -->
            <script src="js/app.js"></script>
            <script src="js/controller/PoolController.js"></script>
            <script src="js/service/poolService.js"></script>
            <link rel="stylesheet" href="http://ift.tt/1J4cr1i">
    </head>

    <body>
      <div ng-app="myApp" ng-controller="customersCtrl">

      <table>
        <tr ng-repeat="x in names">
          <td></td>
          <td></td>
        </tr>
      </table>

      </div>





   ### Angular Module and controller ###
      <script>
      var app = angular.module('myApp', []);
      app.controller('customersCtrl', function($scope, $http) {
          $http.get("/")
          .then(function (response) {$scope.names = response.data.user_posts;
          });
      });
      </script>
    </body>

Json output how it looks like:

{"user_posts":[{"id":1,"username":"Moly","age":22,"added_on":"2017-01-05 08:51:18"},
{"id":2,"username":"katja","age":22,"added_on":"2017-01-05 08:51:18"},
{"id":3,"username":"rumanova","age":22,"added_on":"2017-01-05 08:51:18"}]}

I've tried so far in AngularJS controller:

changing:

 $http.get("/")

With

 $http.get("homepage")

Also tried changing

response.data.user_posts

with

response.data.posts

Basically i'm kinda lost and can't seem to understand, what i am doing wrong. Thanks in advance



from Newest questions tagged laravel-5 - Stack Overflow http://ift.tt/2iO0nyI
via IFTTT

Aucun commentaire:

Enregistrer un commentaire