2017-03-16 5 views
0

ページが読み込まれるときに私の既存のユーザのリストを取得したい。 Angularスクリプトから情報を取得するときはすべて動作しますが、サーバサイドに格納されます。私は、Djangoのビューを作った:AngularJSのDjangoビュー関数を呼び出す

def getUsers(request): 
response = {} 
response['user'] = { 
    'username': 'guy1', 
    'password': 'guy1', 
    'fName': 'John', 
    'lName': 'Smith', 
    'email': '[email protected]', 
    'role': 'Employee', 
    'theme': 'default' 
} 
return JsonResponse(response) 

現在、私はちょうどそこに私のユーザーを渡し、後でそれがpostgreのDBからの情報で埋められます。

urlpatterns = [ 
    url(r'^$', views.index, name='index'), 
    url(r'^', views.dashboard, name='dashboard'), 
    url(r'getUsers/', views.getUsers), 
] 

そして、ページのロード時に最後に、私は角度からのビューを呼び出します:私はすべてを実行すると

$http.get("getUsers") 
    .then(function(output) { 
     $scope.testUser = output; 
     console.log($scope.testUser); 
    }); 

、ブラウザのコンソールが正しくない思い付く私は正しいURLを設定したと思います output.

私が間違っていることについてのアイデアはありますか?ありがとう。

+0

完全なURLに正しいサーバー(http://localhost....etcなど)が含まれているかどうかを確認してください。 – Izuel

答えて

0

私はここで2つのことを行います。まず、このように見えるためにあなたのURLパターンを変更:

url(r'^getUsers/$', views.getUsers), 

第二に、このように見えるためにあなたのAngularJSコードを変更:

$http.get("getUsers/") 
    .then(function(output) { 
    $scope.testUser = output; 
    console.log($scope.testUser); 
}); 

Djangoは「/」である(またはされていない)に敏感ですURLに上記のURLパターンを変更すると、探しているものを明示的に指定できます。元のパターンではまたはgetUsers/abcまたはgetUsers/12345などと一致します。

+0

ありがとう、これはそれを解決したようだ、私は今データがブラウズコンソールで渡されています。 – Tsuki

関連する問題