Как заставить Django Model and Views передавать JSON данные в MySQL базу данных? - PullRequest
0 голосов
/ 21 февраля 2020

Я использую текстовый редактор Quill Rich QUILL JS Редактор , который создает объект JSON, и я хочу сохранить всю информацию о редакторе в базе данных MySQL.

Console of JS

Код, который генерирует этот объект, и я проверяю тип данных данных, которые оказываются типом объекта.

        var draft = quill.getContents();
        console.log(draft);
        console.log(typeof draft);

а вот еще один снимок экрана, на котором показано, как изменяется объект, изменяющийся в данных в редакторе.

Console log

Я хочу сохранить этот объект данных в база данных, как я должен отправлять эти данные и как я буду хранить это в БД? Я обнаружил, что https://dev.mysql.com/doc/refman/8.0/en/json.html, MySQL уже имеет тип данных JSON, но я не могу использовать эту информацию в своих интересах.

Другая ссылка https://django-mysql.readthedocs.io/en/latest/model_fields/json_field.html

data = models.JSONfield(**kwargs)

Используемая модель:

class Post(models.Model):
    postTitle = models.CharField(max_length = 30,required='true')
    subTitle = models.CharField(max_length = 50,required='false')
    author = models.ForeignKey(User,related_name='userPost',on_delete=models.CASCADE)
    postData = models.JSONfield()
    postHeader_Image = models.FileField(upload_to= '/postHeaders/%Y/%m/')

ОБНОВЛЕНИЕ: я работал над тем, как сделать вызов для сохранения в БД.

$.ajax({
    method: "POST",
    url: "{% url 'some_route' %}",
    headers: {'X-CSRFToken': '{{ csrf_token }}'},
    contentType: "application/json",
    dataType: 'json',
    data: {name:$('#id_name').val()}
})
.fail(function(message) {
    alert('error');
})
.done(function(data) {
    alert(data);
});

Я сделаю это и вернусь к вопросу. Пожалуйста, предоставьте любую информацию, если я смогу сделать это лучше или сделаю это любым другим способом.

...