【问题标题】:Data of radio button not being saved in Postgres DB even after a success message即使在成功消息之后,单选按钮的数据也没有保存在 Postgres DB 中
【发布时间】:2021-08-13 20:11:44
【问题描述】:

嗨,我有这些单选按钮,我想在我的 Postgres db 中将它们的数据保存为 json。它没有被发送,我收到一条 message.success 回复说我发送了但是当我检查我的数据库时没有任何反应。 我不完全知道我错在哪里,所以如果你能帮忙,请分享。 PS:我使用的是 Ant Design vue,这就是 a- 的来源。 我确实单击了一个按钮,它会打开一个模式,其中有单选按钮:

 <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,

   }
  },
         }

那么现在发生的情况是我得到了“成功更新”的消息而没有真正更新。我在哪里错过了什么?

【问题讨论】:

    标签: postgresql vue.js antd vuejs3 antdv


    【解决方案1】:

    我将数据库中的类型从 json 更改为字符串,当我将此行 :axios.patch('/prop/' + record.id,{ modalite:modalite.value, }) 更改为 axios.patch('/prop/' + record.id,{ modalite:traitement.value, }) 时,一切正常 所以是的,数据得到了更新,仍然不知道为什么使用 json 类型它不起作用,但至少我找到了一种方法,如果你有解释或建议,它将被应用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-16
      • 2014-01-21
      • 2013-06-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多