django - 如何使用 Rest 框架将附件发送到 Django webapp?
问题描述
我收到了这个用 Django 制作的聊天应用程序,并被要求添加一个功能,帮助在聊天中发送附件,如文档和图像。我对此真的很陌生,不知道该怎么做。我确实找到了开发此聊天应用程序的来源: 使用 Django Rest Framework 的简单聊天应用程序
以下是发送和接收函数:
function send(sender, receiver, message) {
$.post('/api/messages', '{"sender": "' + sender + '", "receiver": "' + receiver + '","message": "' + message + '" }', function (data) {
console.log(data);
var box = text_box.replace('{sender}', "You");
box = box.replace('{message}', message);
$('#board').append(box);
scrolltoend();
})
}
function receive() {
$.get('/api/messages/' + sender_id + '/' + receiver_id, function (data) {
console.log(data);
if (data.length !== 0) {
for (var i = 0; i < data.length; i++) {
console.log(data[i]);
var box = text_box.replace('{sender}', data[i].sender);
box = box.replace('{message}', data[i].message);
box = box.replace('right', 'left blue lighten-5');
$('#board').append(box);
scrolltoend();
}
}
})
}
这是html文件中的代码:
<script>
// For receiving, set global variables to be used by the 'receive' function
sender_id = "{{ receiver.id }}"; //Context variable for receiver
receiver_id = "{{ request.user.id }}"; //Context variable for current logged in user
//For sending
$(function () {
scrolltoend(); // Function to show the latest message, which is at the bottom of the message box, by scrolling to the end
//Handling the submit event to send the message.
$('#chat-box').on('submit', function (event) {
event.preventDefault();
var message = $('#id_message');
send('{{ request.user.username }}', '{{ receiver.username }}', message.val()); //Send function will be defined within 'chat.js'
message.val(''); //Clear content of the the input field after sending
})
setInterval(() => {
getUsers({{ request.user.id }}, doc => {
let list = ''
doc.map(userItem => {
list += userItem
})
$('#users').html(list)
});
}, 1000)
})
</script>
有人可以帮忙吗?
解决方案
推荐阅读
- javascript - 如何正确使用猫鼬承诺
- node.js - Firestore 不适用于 AWS Lambda
- c#-6.0 - 当有更多句子时,在 C# 6.0 中编写新的 get 和 set 属性的方法是什么?
- unity3d - Blender to Unity:将自定义碰撞器添加到低多边形样式地形
- c++ - OPENCV - 如何在 OpenCV 中使用 Haar 级联 Github xml 文件?
- suitescript - Netsuite 套件脚本 2.0
- java - 如何在 spring-integration 中停止消息?
- google-app-engine - 谷歌端点迁移到版本 2 后,参数 Named("key") Key key 未显示在 api explorer 中
- css - 如何使用 postcss 管理我网站中的托管字体?
- vba - 试图从连接的字符串中收集日期