• 27-04-2023, 18:20:27
    #1
    Üyeliği durduruldu
    Merhaba akradaşlar bir türlü anlamadım delete ediyorum ama silmiyor örnek http://localhost:3000/nadmin/kategor...df64249c681859 bu adrese gidiyorum sonda ki slash ve id kaldırınca doğru url kategoriler kısmına gidiyor ama silmek istediğimde hata şu
    http://localhost:3000/nadmin/kategor...df64249c681859 404 (Not Found)
    deleteCategory @ api.js:5
    onclick @ VM833 kategoriler:1

    Yardımcı olabilirseniz çok mutlu olurum valla

    api.routers.js dosyam şu şekilde

    const express = require('express');
    const router = express.Router()
    const Kategori = require('../../src/model/categorimodel');
    const fetch = require('node-fetch');
    router.delete('/nadmin/kategoriler/:id', async (req, res) => {
      try {
        console.log("test çalışıyor mu")
        const kategoriId = req.params.id;
        await Kategori.findByIdAndDelete(kategoriId);
        res.json({ success: true });
        console.log("burada")
      } catch (err) {
        console.log(err);
        res.json({ success: false });
        console.log("hata")
      }
    });
    module.exports = router;
    Api.js dosyam
    const deleteCategory = async (categoryId) => {
        try {
          console.log("test çalışıyor mu ?")
          const response = await fetch(`/nadmin/kategoriler/${categoryId.toString()}`, { method: 'delete', headers: {"Content-type": "application/json"}});
          const data = await response.json();
          if (data.success) {
            console.log("silme başarılı");
          } else {
            console.log('silme başarısız')
          }
        } catch (err) {
          console.log(JSON.stringify(err))
        }
      }
    kategoriler.ejs dosyam

      <form>
                                             <% kategorim.forEach(function(kategori) { %>
                                                    <tr>
                                                    <td class="text-center">
                                                        <div class="form-check">
                                                            <input class="form-check-input" type="checkbox" value="" />
                                                        </div>
                                                    </td>
                                                    <td>21</td>
                                                    <td><b><%- kategori.kategoriadi  %></b></td>
                                                    <td><%- kategori.kategoriaciklama %></td>
                                                    <td><%- kategori.kategoriurl  %></td>
                                                    <td>1</td>
                                                    <td class="text-end">
                                                        <div class="dropdown">
                                                            <a href="#" data-bs-toggle="dropdown" class="btn btn-light rounded btn-sm font-sm"> <i class="material-icons md-more_horiz"></i> </a>
                                                            <div class="dropdown-menu">
                                                                <a class="dropdown-item" href="#">Kategori Detay</a>
                                                                <a class="dropdown-item" href="#">Kategori Düzenle</a>
                                                                <button type="button" onclick="deleteCategory('<%= kategori._id %>')" class="dropdown-item text-danger">Sil</button>
                                                            </div></div>
                                                        </div>  <% }); %>
                                                    </td>
  • 27-04-2023, 18:34:57
    #2
    Onclick de neden id nin başında alt tire var?
  • 27-04-2023, 18:37:41
    #3
    Üyeliği durduruldu
    VBuMaSTeR adlı üyeden alıntı: mesajı görüntüle
    Onclick de neden id nin başında alt tire var?

    mongodb de id leri _id olarak getiriyorum hocam o yüzden koydum
  • 27-04-2023, 18:39:54
    #4
    Proffice adlı üyeden alıntı: mesajı görüntüle
    mongodb de id leri _id olarak getiriyorum hocam o yüzden koydum
    Ama api router ında alt tire siz almaya çalışıyorsun hocam
  • 27-04-2023, 18:44:51
    #5
    Üyeliği durduruldu
    VBuMaSTeR adlı üyeden alıntı: mesajı görüntüle
    Ama api router ında alt tire siz almaya çalışıyorsun hocam

    şimdi öyle de denedim ama olmadı kaç saatir uğraşıyorum bir yerde hata var ama ne yaptıysam çözemedim
  • 27-04-2023, 19:48:00
    #6
    Proffice adlı üyeden alıntı: mesajı görüntüle
    şimdi öyle de denedim ama olmadı kaç saatir uğraşıyorum bir yerde hata var ama ne yaptıysam çözemedim
    Şu kısmın ürettiği linki bir console a yazdırır mısın doğru linki oluşturuyor mu diye kontrol etmek için.
    fetch(`/nadmin/kategoriler/${categoryId.toString()}`
    Link doğru ise bakend de hata var demektir. Bildiğim bir yapı olmadığı için kodu pek analiz edemiyorum. Sadece id nin başında : var. Dikkatimi çeken o oldu. Adım adım şu kısma kadar id değerinizi doğru taşıdığınızsan emin olmalısınız.
    Kategori.findByIdAndDelete(kategoriId)
  • 27-04-2023, 19:49:28
    #7
    Üyeliği durduruldu
    VBuMaSTeR adlı üyeden alıntı: mesajı görüntüle
    Şu kısmın ürettiği linki bir console a yazdırır mısın doğru linki oluşturuyor mu diye kontrol etmek için.
    fetch(`/nadmin/kategoriler/${categoryId.toString()}`
    Link doğru ise bakend de hata var demektir. Bildiğim bir yapı olmadığı için kodu pek analiz edemiyorum. Sadece id nin başında : var. Dikkatimi çeken o oldu. Adım adım şu kısma kadar id değerinizi doğru taşıdığınızsan emin olmalısınız.
    Kategori.findByIdAndDelete(kategoriId)
    hala başındayım uğraşıyorum bulamadım buyrun hocam şöyle bir kod üretiyor
    1. Response {type: 'basic', url: 'http://localhost:3000/nadmin/kategoriler/644a724facdf64249c681859', redirected: false, status: 404, ok: false, …}
      1. body: (...)
      2. bodyUsed: true
      3. headers: Headers {}
      4. ok: false
      5. redirected: false
      6. status: 404
      7. statusText: "Not Found"
      8. type: "basic"
      9. url: "http://localhost:3000/nadmin/kategoriler/644a724facdf64249c681859"
      10. [[Prototype]]: Response
  • 27-04-2023, 20:08:03
    #8
    Üyeliği durduruldu
    VBuMaSTeR adlı üyeden alıntı: mesajı görüntüle
    Şu kısmın ürettiği linki bir console a yazdırır mısın doğru linki oluşturuyor mu diye kontrol etmek için.
    fetch(`/nadmin/kategoriler/${categoryId.toString()}`
    Link doğru ise bakend de hata var demektir. Bildiğim bir yapı olmadığı için kodu pek analiz edemiyorum. Sadece id nin başında : var. Dikkatimi çeken o oldu. Adım adım şu kısma kadar id değerinizi doğru taşıdığınızsan emin olmalısınız.
    Kategori.findByIdAndDelete(kategoriId)
    çözüldü teşekkür ederim