2017-02-02 4 views
-1

ReactJSのDjangoプロジェクトへの統合についてかなり読んで見ています。私は、DjangoからDjango REST Framework経由でJSONの形で流れるデータの基本的な概念を得ています。フロントエンドフレームワーク(AngularJS/ReactJS)を使用したDjangoフォームと認証

チュートリアルは終了しているようですが、データが逆方向にどのように流れ、どのような役割があれば、Django形式で再生できますか?私は、入力要素がJSONにレンダリングされたと考えて、モデルを更新するためにPUT,PATCHPOSTなどの形式でDjango REST Frameworkを介して返送されると考えています。

しかし、Djangoに組み込まれた認証ビューに対してユーザー入力を使用する場合は、少し失礼です。誰かがこれを説明して気にする経験がありますか?

+0

プロジェクトのレイアウトを明確にしてください。たとえば、DjangoでREST APIを作成し、そのAPIをReactプロジェクトから呼び出していますか? – Turtle

+0

はい、正しいです。フロントエンドにReactJSを使用しているので、APIを作成するためにDjango REST Frameworkを使用し、ReactJSにJSONを渡してフロントエンドにレンダリングさせる必要があります。私はこれまでにはまだそれほど得意ではありませんが、フロントエンドでのやりとりがDjangoにどのように戻ってくるのか疑問に思っています。 – sockpuppet

+0

あなたは 'fetch'のようなものを通してあなたのDjango APIにapi呼び出しを行います。あなたはDjangoフォームをまったく使用しません – Turtle

答えて

0

まず、Django-Rest-FrameworkでAPIを開発する必要があります。以下は

は、APIにデータを送信ReactJs

のデータを送受信する方法を最小限の例です。

onSubmit(){ 
    fetch('https://djangoRest.com/endpoint/', { 
    method: 'POST', 
    headers: { 
    'Accept': 'application/json', 
    'Content-Type': 'application/json', 
    }, 
    body: JSON.stringify({ 
    firstParam: 'yourValue', 
    secondParam: 'yourOtherValue', 
    }) 
    }) 
} 

ReactJsはAPIからデータをフェッチ

loadData() {  
    fetch('https://djangoRest.com/endpoint/', { 
      method: 'GET', 
      headers: { 
       'Accept': 'application/json', 
       'Content-Type': 'application/json', 
      } 
      }) 
      .then((response) => response.json()) 
      .then((responseJson) => { 
      if (responseJson.data) { 
       this.setState({ Data: responseJson.data }); 
      } 
      if (responseJson.errors) { 
       console.log('errors', responseJson.errors) 
      } 
      }) 
    } 

参考: https://facebook.github.io/react-native/docs/network.html

関連する問題