環境 win10 home
python 3.7.4
django 3.0.1
djangoにて、
「入力フォームのデータを処理し、同時にクラウドのデータベース(=kintone) APIでレコード登録をする」
というアプリを試作しています。
djangoのviews.py の当該コードは下記のようになります。
IDやパスワードはマスクさせていただきました。
python
1def seikyu(request): 2 class send_kintone(object): 3 def __init__(self): 4 self.password = base64.b64encode( 5 '********************'.encode('utf-8')) 6 7 self.url = '********************' 8 9 def post_kintone(self): 10 headers = { 11 "X-Cybozu-Authorization": self.password, 12 "Content-Type": "application/json", 13 } 14 res = requests.post(self.url, headers=headers, json=request_body) 15 return res 16 17 if request.method == 'POST': 18 form = JutyuForm(request.POST) 19 if form.is_valid(): 20 form.save() 21 request_body = { 22 "app" : **, 23 "record" : { 24 "受注内容": { 25 "value": form.cleaned_data['jutyu'],#注1 26 }, 27 }, 28 } 29 request_body = json.dumps(request_dic)~~ 30 pk = send_kintone().post_kintone() 31 messages.success(request, '登録完了しました。') 32 return redirect('app:index') 33 else: 34 form = JutyuForm() 35 return render(request, 'app/seikyu.html', {'form': form})
注1の箇所で、
form.cleaned_data['jutyu'] とせず 文字列'sample'を入力した時にはエラーなく動作し、
kintoneへの登録も正常にできました。
このことから、jsonファイルの作り方に問題があるのではとにらんでいますが、問題解決には至っていません。
ご指摘・ご指導いただけると幸いです。
どうぞよろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/17 09:51
2020/05/17 14:15