#postgresql #vue.js #antd #vuejs3 #antdv
Вопрос:
Привет, у меня есть эти переключатели, где я хочу сохранить их данные в формате json в моей базе данных Postgres . Это не отправляется, я получаю сообщение.успех, в котором говорится, что я это сделал, но когда я проверяю свою базу данных, ничего не происходит. Я точно не знаю, где я ошибаюсь, поэтому, если вы можете помочь, пожалуйста, поделитесь. PS: Я использую Ant Design vue, вот откуда берется «а». Я нажимаю на кнопку, и она открывает модальный режим, в котором у меня есть переключатели :
<template #modalite="{ record }">
<span>
<a-button
@click="showModalite(record)"
class="btn btn-sm btn-light mr-2"
>
<i class="fe fe-edit mr-2" />
Modalité
</a-button>
</span>
</template>
а вот мой код кнопок :
<a-modal
v-model:visible="visible"
:width="500"
@ok="ChangeModalite(modelInfo)"
>
<div class="row">
<a-radio-group name="radioGroup" v-model:value="traitement">
<div class="col-md-6">Négociation directe</div>
<div class="col-md-3">
<a-radio value="Négociation directe" v-model:checked="modalite.negociation" />
</div>
<div class="col-md-6">Appel à concurrence</div>
<div class="col-md-3">
<a-radio value="Appel à concurrence" v-model:checked="modalite.concurrence"/>
</div>
</a-radio-group>
</div>
</a-modal>
Сценарий :
setup() {
const visible = ref(false)
const traitement = ref('Négociation directe');
const modalite = ref({
negociation:false,
concurrence:false,
})
const showModalite = (record) => {
modelInfo.value = record
modalite.value = { ...modalite.value, ...record.modalite }
visible.value = true
}
const ChangeModalite = (record) => {
console.log(record.id ": " traitement.value)
axios.patch('/prop/' record.id,{
modalite:modalite.value,
})
.then(()=>{
record.modalite=modalite.value
Object.assign(
dataSource.value.filter((item) => record.id === item.id),
record,
)
message.success(`successfully updated !!`)
visible.value = false
})
.catch((e)=>{
message.warning("smthg wrong ")
})
}
return {
dataSource,
modelInfo,
showModalite,
ChangeModalite,
modalite,
traitement,
}
},
}
Итак, что происходит сейчас, так это то, что я получаю «последовательно обновленную» msg без реального обновления.где я что-то пропустил?
Ответ №1:
Я изменил тип с json на строку в своей БД, все работает нормально, когда я изменил эту строку : axios.patch('/prop/' record.id,{ modalite:modalite.value, })
на это axios.patch('/prop/' record.id,{ modalite:traitement.value, })
, так что данные обновляются, все еще не знаю, почему с типом json это не работает, но, по крайней мере, я нашел способ, если у вас есть объяснение или предложение, оно будет оценено .