anladığım kadarıyla max-width:400 için geçerli kısımda bu kod.
Galiba siz globali değiştirmeye çalışıyorsunuz. Satırlar aynı mı kontrol ettiniz mi?
Ya da cache vb. bir durum var mı?
@omerf
Hocam aslında başlangıçta bahsettiğiniz şekilde tek butondan yapmaya çalıştım ve şu sorunla karşılaşmıştım; laravelde silme işlemi için post değil delete methodu kullanılıyor ben de bunu aşmak için iki ayrı ajax methodu kullanmıştım yani methodum post olduğunda silme işleminde muhtemel bir hata alacağım...
@omerf öncelikle bilgi için teşekkür ederim.
Evet şu noktada sorunum iki buton var ve bunların beğenildikten ve beğeni geri çekildikten sonra birbirleri arasında değişmesini planlıyorum bunu da d-none d-block ile yapabildim.
Ancak, ilk işlem sonrasındaki her işlem kendini tekrar ediyor 2 kere tıklamış gibi oluyor butona. Kod yine çalışıyor ancak bir hatalı(zaten beğendiği bir şeyi tekrar beğenemeyeceğinden ya da tam tersi) bir doğru işlem göndererek çalışıyor.
Aslında tam olarak "bir kez daha sile tıklarsa oluşan hata mı?" dediğiniz.
Sorunu çözdüm aynı controller içerisinde iki farklı new methodu çalıştırabiliyormuşuz hiç denemek aklıma gelmemişti :)
Şimdi şöyle bir sorun ortaya çıktı eğer title daha önce var ise yine de posts oluşturmaya çalışıyor ve duplicate entrye düşüyor.. Eğer o title var ise sadece commenti gönder nasıl yapabilirim acaba?
Daha açık anlatayım
Posts tablom
id | title | slug |
---|---|---|
1 | Hello world | hello-world |
2 | O hi | o-hi |
Comments tablom
id | post_id | body |
---|---|---|
1 | 1 | Lorem ipsum |
2 | 2 | Lorem ipsum |
3 | 2 | Lorem ipsum second same post |
İlk postu gönderirken body'i comments tablomdan almak istiyorum. Yani formumdaki body kısmı commentsden gelmeli ve create methodumda da kaydederken henüz oluşturulmamış postun idsini commentse entegre ederek oluşturmalı...
@m100,
Hocam merhaba bu dediğiniz ilişkilendirme için ilişkilendirmede herhangi bir sorunum yok. Yani yorumlarım postuma zaten gidiyor.
Benim sorum; ilk konuyu açarken girilen body kısmı bir yorum olması ve bunun tek formdan gitmesi.
Öncelikle fiyatlandırman ve verdiğin süre yanlış...
Bahsettiğin proje 3 günlük bir proje değil. Ha 3 günde yapabilecek arkadaşlar var mı? Bence var ama bu adamlar neredeyse 10 yıldır sektörün içinde olan adamlar.
Şimdi sana hayatının tavsiyesi ile birlikte yapman gereken şeyleri anlatacağım.
Öncelikle, işi aldığın insana durumu anlat. Projenin sandığından kapsamlı olduğunu, yine de yapabileceğini ancak gecikeceğini ancak ne kadar gecikirse o kadar kaliteli bir sistem olacağını söyle. Tepkisi sert olursa üzgün olduğunu belirt. En kötü sonuçla iade talep eder. Eğer anlayışlı biriyse de zaten sana ihtiyacın olan süreyi verecektir. Her türlü baştan savma iş yapmaktan daha iyi olacak.
Süre uzadığı için 350 lira hakkı değil bu işi para olarak görme kendini geliştirme olarak gör. Bir daha da böyle hatalar yapma. Biliyorum bionluk fiyat konusunda ölücü bir yer ama o ölü fiyat verenlerin çoğunun hazır templateleri var herkese onu satıp geçiyorlar ek isteklere de zorluğuna göre fiyat çekiyorlar sen ise daha yolun başındasın belli ki bir hata etmişsin :)
@hakankorkz
Estağfurullah hocam aslında sorunu çözdüm buraya da sonucu ekleyeyim,
Ajax post işlemim aşağıdaki şekildeydi
$(".likesubmit").click(function(e){
e.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
post_id = $(this).attr('id');
var _token = $('meta[name="csrf-token"]').attr('content');
var id = $('input[name="id"]').val();
$.ajax({
type:'POST',
url: '{{route('like')}}',
data:{
id:id,
_token: _token,
},
dataType: 'json',
success:function(result){
console.log(result);
}
}).done(function(response) {
var likes = response.likes;
$('#likenumber-'+ post_id).html(response.likes);
});
});
var id = $('input[name="id"]').val();
kısmını aşağıdaki şekilde değiştirerek loop içerisinde hangi idi post ettireceğini ayarladım
var id = $(this).parent().find('.id').val();
Artık çalışıyor.
$comments = Post::select('posts.*', 'users.name', 'comments.*')
->join('comments', 'comments.post_id', 'posts.id')
->join('users', 'users.id', '=', 'comments.user_id')
->orderBy('comments.created_at', 'DESC')
->withCount('comments')
->get();
Bu şekilde yapabildim çalıştı görünüyor umarım yanlış bir şey yapmamışımdır sonucu buraya ekleyeyim dedim.
$comments = Post::select('posts.*', 'users.name', 'comments.*')
->join('comments', 'comments.post_id', 'posts.id')
->join('users', 'users.id', '=', 'comments.user_id')
->selectRaw('posts.*, count(comments.post_id) as commentcount')
->groupBy('posts.id')
->orderBy('comments.created_at', 'DESC')
->get();
Son olarak bu şekilde çalıştırdım ancak grupladığım için tüm gönderileri post edemiyorum sadece sonuncusunu gösterebiliyorum... Ancak tüm sonuçları göstermem gerekiyor...