ユーザーがフォームを操作してテキストをデータベースに投稿できるように、リーフレット ポップアップで csrf トークンを作成するにはどうすればよいですか? タグを単純な html フォームに追加しましたが{% csrf_token %}
、これは正常に機能しますが、ポップアップのコンテンツ セクションに配置すると機能しませんが、他の html 要素は正常に機能します。
map.on('click', function(e) {
var popupContent = '<p>What would you like to post to this location? <form action="/post_temp/" method="post"> {% csrf_token %} <p> <input type="text" name="post"> </p> <input type="submit" value="Post"> </form>',
popup = new L.Popup();
popup.setLatLng(e.latlng);
popup.setContent(popupContent);
map.openPopup(popup);
});
基本的に、トークンをそのままにしておくと、Leaflet マップがまったく読み込まれませんが、省略すると、CSRF トークンが見つからないか、正しくないエラーが発生します。
私はこれらすべて(javascript/leaflet/web dev/django)に少し慣れていないので、問題がどこから来ているのか、どこから始めればよいのかわかりません。leaflet.js コードをいじる必要があると思いますが、それを理解できるとは確信していません。どこに行くべきか、挿入できるコード、または(素人の言葉で)コードが機能しない理由を教えてください。