0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Antigravityの機能疎通 その5(Djangoとの接続)

0
Posted at

今日のテーマは、簡単にDjangoでHelloとWorldを返すAPIを作成し、それをReactから呼び出すようにします。そのあとでAPIに修正を入れるとき、APIの引数など意識して、両方に改修いれられるのか?を見てみたいと思います。

1.Django側はさらさらとAPI作る

/api/hogeに対してGETリクエストをだしたら{message: "hello"}を返すだけのAPIを作ってもらう。
image.png

タスクの最後、curlでテストするところまで自動でプランニングされているのはうれしい。
image.png
そして、無事に疎通まで完了。

ここまできてからちょっと気持ちが変わって、手動で'message2':'world'も追加してSave。
image.png

Agentのログを見ると、開発Serverとめちゃているので起動しておいてもらいます。

2.React側からlocalhost:8000/api/hogeを呼ぶように変更

1でつかっていたコンテキストとは別に、エージェントとの会話を新規に開きます。
image.png

ReactのApp()から、localhost:8000/api/hogeを呼ぶように変更してもらいます。
少し雑目に指示挑戦。
image.png

いけそう。CORSいけるかな??と思ったけどちゃんと考慮されてた。
image.png

image.png
うん、できる!!

image.png
URLハードコードなのはよしとして、気が利きすぎるくらいに、メッセージを取り出して、CSSも整えて画面に表示してくれました。

3.ちょっとだけ修正でmessage2も画面に足してもらいます。

image.png
ちゃんとバックエンド側のAPI response考えてる!

image.png
Acceptするだけ。

image.png
自動的に証跡も記録。

4.下準備がおわったところで、API側からmessage2を削ります。

Django側を操作していたコンテキストに戻って(React側で呼び出す処理をしたことを知らないはずのエージェント)、APIからmessage2を削除してもらいます。
image.png

これが
image.png
↓
この状態に。
image.png

さすがにReact側で呼び出されているね、までは考慮できなかったようです。
(ちょっとほっとした気分)

### 5.影響調査して、ができるかの確認
image.png
なんかちょっと新人君に、できる??って聞いてる気分に。。。

だがしかし、、、こういう聞き方だと、ちょっと時間かかりすぎいったん停止。

grepしていえば、VS Code的にgrepするのかな?を期待して、エージェントに指示。
結果的にはこれだけでも、ものすごい時間がかかってしまいました。
image.png

URLを変数に入れてたりすると、簡単には探せないだろうし、
ここからの修正方法のbest practiceはちょっと考えてみたいと思います。
(React側でAPI responseに対するテストコード用意しておいて、
エラーになるので拾うのかなぁ、、、)

おわりに

単に一発芸でミニアプリをつくるだけではなく、
どの程度、開発エージェントツールとして日常使い出来そうか少し感覚つかめたので、
"Antigravityで機能疎通"シリーズはいったん終わりにします。

だらだらとメモをとっただけの記事ですが、少しでも誰かの参考になれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?