View Full Version : سوال: بخش تایید نظرات کاربران
sarah2
دوشنبه 25 مرداد 1395, 21:37 عصر
سلام
چطور نظراتی که کاربران برای یک خبر میدن را تایید کنم یا رد کنم ؟
دوستان اگه میتونید نمونه کد بزارید
Moien Tajik
دوشنبه 25 مرداد 1395, 22:50 عصر
به جدول نظرات یک Column با Bool ، DateType مثل IsAccepted اضافه کنید . اگر مدیر نظر رو تایید کرد True بشه و در حالت عادی False باشه . موقع نشون دادن نظرات هم یه Where بزارید :
var result = db.posts.Where(r =>r.IsAccepted).ToList();
sarah2
دوشنبه 25 مرداد 1395, 23:36 عصر
به جدول نظرات یک Column با Bool ، DateType مثل IsAccepted اضافه کنید . اگر مدیر نظر رو تایید کرد True بشه و در حالت عادی False باشه . موقع نشون دادن نظرات هم یه Where بزارید :
var result = db.posts.Where(r =>r.IsAccepted).ToList();
مرسی
مشکلم اینجاست که چطور مشخص کنم به طور پیشفرض false باشه
و قسمت ویو رو نمیتونم بسازم
Moien Tajik
سه شنبه 26 مرداد 1395, 00:00 صبح
وقتی که کاربر نظر رو POST میکنه ، توی Controller مدل رو بعنوان ورودی میگیرید ، به فرض اگر اسم مدلتون Comment باشه ، به این صورت بطور پیشفرض نظر ارسال شده رو تایید نشده میزارید و به دیتابیس اضافش میکنید :
[HttpPost]
public ActionResult Comment(Comment model)
{
var comment = new Comment
{
Title = model.Title,
Description = model.Description,
IsAccepted = false
};
db.Comments.Add(comment);
db.SaveChanges();
return RedirectToAction("Index");
}
alireza_s_84
سه شنبه 26 مرداد 1395, 01:50 صبح
وقتی که کاربر نظر رو POST میکنه ، توی Controller مدل رو بعنوان ورودی میگیرید ، به فرض اگر اسم مدلتون Comment باشه ، به این صورت بطور پیشفرض نظر ارسال شده رو تایید نشده میزارید و به دیتابیس اضافش میکنید :
[HttpPost]
public ActionResult Comment(Comment model)
{
var comment = new Comment
{
Title = model.Title,
Description = model.Description,
IsAccepted = false
};
db.Comments.Add(comment);
db.SaveChanges();
return RedirectToAction("Index");
}
وقتی مدل شما از نوع Comment هست چرا دوباره یک نمونه جدید ساختین؟؟؟ همون مدل رو ویرایش میکردین بعد db.SaveChanges(); رو فراخونی میکردین دیگه نیازی به نمونه سازی کلاس جدید نبود.
sarah2
سه شنبه 26 مرداد 1395, 23:51 عصر
دوستان چطور مشخص کنم که اگر روی دکمه ی تایید کلیک شد نظرات نمایش داده بشن ؟(در قسمت ویو)
باید برای دکمه با جاوا اسکریپ کد رویداد بنویسم ؟
Moien Tajik
چهارشنبه 27 مرداد 1395, 00:44 صبح
یا باید یه قسمت تو بخش مدیریت برای تایید نظرات داشته باشید یا در همون صفحه با ajax بنویسید که وقتی نظر تایید شد نشون داده بشه . این برای وقتی که از بخش مدیریت نظر تایید شده ، برای نمایشش :
Controller :
public ActionResult Index()
{
var comments = db.Comments.Where(r => r.IsAccepted).ToList();
return View(comments);
}
View :
@model YourSite.Models.Comment
@{
foreach (var item in Model)
{
<h4>@item.Title</h4>
<p>@item.Description</p>
}
}
sarah2
چهارشنبه 27 مرداد 1395, 01:02 صبح
مرسی
نیازی نیست که مشخص کنیم IsAccepted برابر با true باشه؟!
مثل این:
var comments = db.Comments.Where(r => r.IsAccepted == true).ToList();
sarah2
چهارشنبه 27 مرداد 1395, 01:29 صبح
یک مشکل دیگه ای هم هست که ما به یک دکمه برای تایید نظر احتیاج داریم
مثل این:
142011
Moien Tajik
چهارشنبه 27 مرداد 1395, 01:47 صبح
مرسی
نیازی نیست که مشخص کنیم IsAccepted برابر با true باشه؟!
مثل این:
var comments = db.Comments.Where(r => r.IsAccepted == true).ToList();
نه نیازی نیست ، بطور پیشفرض true هستش .
Moien Tajik
چهارشنبه 27 مرداد 1395, 01:49 صبح
یک مشکل دیگه ای هم هست که ما به یک دکمه برای تایید نظر احتیاج داریم
مثل این:
142011
تایید رو که توضیح دادم براتون ... یا باید از بخش مدیریت تایید کنید یا ajax ، برای نظر هم زیاد درست نیست که ویرایش داشته باشید ، چون نظر معمولا فقط تایید و حذف داره .
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.