راکت
Paradox
Paradox
توسط Paradox مطرح شد
12 پاسخ

امتیاز دهی ستاره ای در لاراول

سلام وقت بخیر
میخام به صورت ستاره ای امتیاز دهی انجام بدم
ولی اطلاعی ندارم به چه صورت انجام میشه
اگه امکان داره راهنمایی در این خصوص بشه
ممنون


ثبت پرسش جدید
محمدهادی غفوری
محمدهادی غفوری
تخصص :برنامه نویس نیمه حرفه ای
@ha.ghafouri5 سال پیشمطرح شد
0

سلام
از این پکیج میتونی استفاده کنی

https://packagist.org/packages/kartik-v/bootstrap-star-rating


Paradox
Paradox
تخصص :در حال یادگیری
@paradox5 سال پیشمطرح شد
Paradox
Paradox
تخصص :در حال یادگیری
@paradox5 سال پیشمطرح شد
0

@ha.ghafouri

موقع نصب پکیج ارور دارم

Using version ^4.0 for kartik-v/bootstrap-star-rating
./composer.json has been updated
Running composer update kartik-v/bootstrap-star-rating
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - shetabit/payment is locked to version v4.0.1 and an update of this package was not requested.
    - shetabit/payment v4.0.1 requires ext-soap * -> it is missing from your system. Install or enable PHP's soap extension.

To enable extensions, verify that they are enabled in your .ini files:
    - C:\xampp\php\php.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation failed, reverting ./composer.json and ./composer.lock to their original content.

چیکار باید کرد ؟


علیرضا زارعی
علیرضا زارعی
تخصص :توسعه دهنده وب
@aliwebto5 سال پیشمطرح شد
0

سلام
از داخل php.ini افزونه soap رو فعال کنید
داخل ارور هم توضیح داده

 - shetabit/payment is locked to version v4.0.1 and an update of this package was not requested.
    - shetabit/payment v4.0.1 requires ext-soap * -> it is missing from your system. Install or enable PHP's soap extension.

To enable extensions, verify that they are enabled in your .ini files:
    - C:\xampp\php\php.ini

Paradox
Paradox
تخصص :در حال یادگیری
@paradox5 سال پیشمطرح شد
0

@aliwebto

ممنون

چطوری باید فراخوانی کرد ؟نصب شد بقیه رو نمیدونم چیکار کنم


محمدحسن یگانه
محمدحسن یگانه
تخصص :Full-Stack Web Developer Freelancer
@mhyeganeh5 سال پیشمطرح شد
2

آیا برای پیاده سازی یک سیستم Rating ستاره ای هم باید بریم سراغ پکیج جداگانه واقعا...؟

پنج تا ستاره به کاربر نشون میدید. روی هر کدوم که کلیک کرد اطلاعاتش داخل دیتابیس ذخیره میشه. برای نمایشش هم میانگین تمام امتیازهای قبلی رو حساب می‌کنیم. کدوم بخشش مبهمه؟


علیرضا زارعی
علیرضا زارعی
تخصص :توسعه دهنده وب
@aliwebto5 سال پیشمطرح شد
1

@TF92 دیگه عزیز باید یکم گوگل کنی ،
how to enable soap in xampp
بعد هزار تا آموزش میاد ، طبق یکیش پیش برو
توی برنامه نویسی مهارت سرچ کردن از کد نویسی مهم تره


Paradox
Paradox
تخصص :در حال یادگیری
@paradox5 سال پیشمطرح شد
0

@aliwebto
soap منظور نبود این مشکل حل شد
راجب پکیج پرسیدم که چطوری باید فراخوانی کرد توضیحاتی تو لینکی که دوست عزیز فرستادن ندیدم


Paradox
Paradox
تخصص :در حال یادگیری
@paradox5 سال پیشمطرح شد
0

@mhyeganeh
تابحال انجام ندادم و نمیدونستم به چه صورت میشه پیاده سازی کرد
دوستان پکیج معرفی کردن
قطعا چیزی که خودمون پیاده سازی کنیم بهتر از پکیج هست


Paradox
Paradox
تخصص :در حال یادگیری
@paradox5 سال پیشمطرح شد
0

سلام من سیستم امتیاز دهی به این شکل نوشتم
ارور زیر برخوردم نمیدونم تو ویو به چه صورت بنویسیم اعمال بشه امتیاز دهی

Undefined variable: product_id (View: C:\xampp\htdocs\Modules\Products\Resources\views\home\single-product.blade.php)

دیتابیس

        Schema::create('ratings', function (Blueprint $table) {
            $table->id();
            $table->integer('product_id');
            $table->integer('user_id');
            $table->double('rating');
            $table->timestamps();
        });

مدل

class Rating extends Model
{

    protected $fillable = ['product_id' , 'user_id' , 'rating'];

    public function ratings()
    {
    return $this->hasMany(Rating::class);
    }
}

کنترلر

    public function rating(Request $request)
    {
        $product_id= $request->product_id; 
        $rating = $request->rating; 
        $user_id = $request->id(); 
        $rating = Rating::firstOrCreate(['product_id'=>$product_id, 'user_id'=>$user_id], ['rating'=>$rating]);

        if ($rating->wasRecentlyCreated === true) {
            return back();
        } else {
                return back();
        }
    }

روت

Route::post('/rating' , 'RatingController@rating');

ویو

                       <div class="col-lg-12">
                            <?php
                            $avg = $product_id->ratings()->avg('rating');
                            $ov_rating = number_format($avg);   // this is used to convert no from decimal
                            ?>
                            @if(count($product_id->ratings) > 1)
                            <div class="rating_inner">
                                <span class="rating_icon">
                                    @for($i = 0; $i < $ov_rating; $i++)
                                        <span class="fa fa-star"></span>
                                    @endfor
                                    @for($i = 0; $i < 5 - $ov_rating; $i++)
                                        <span class="fa fa-star light"></span>
                                    @endfor
                                </span>
                                @if($avg)
                                    <span class="rating">{{$avg}}</span>
                                    <span class="max_rating">{{_('5')}}</span>
                                @else
                                    {{_('No Ratings Yet')}}
                                @endif
                                <span class="rating_total">{{_('(')}}<span>{{count($product_id->ratings)}}</span>{{_(' votes)')}}</span>
                            </div>
                            @endif
                        </div>

Armin Rahmati
Armin Rahmati
@arminrahmati9995 سال پیشمطرح شد
0

سلام.
میشه دلیل استفاده از این دو خط رو بهم بگین؟

$product_id= $request->product_id; 
$user_id = $request->id();

Paradox
Paradox
تخصص :در حال یادگیری
@paradox5 سال پیشمطرح شد
0

@arminrahmati999
سلام طبق یک اموزش پیش رفتم که بر اساس محصول و کاربر امتیاز دهی انجام بشه 🤷🏻‍♂️
دیتابیس رو به چند نفر نشون دادم گفتن درسته و همین روش پیش رفتم ولی باز به جواب نرسیدم
متاسفانه سوال میپرسم همه میگن راحته فلانه به جای راهنمایی و همچنان درگیر امتیاز دهی هستم 😓
اگه اموزش درستی سراغ دارید ممنون میشم راهنمایی کنید


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام