Paradox
4 سال پیش توسط Paradox مطرح شد
12 پاسخ

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

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


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

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

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


Paradox
تخصص : در حال یادگیری
@paradox 4 سال پیش مطرح شد
Paradox
تخصص : در حال یادگیری
@paradox 4 سال پیش مطرح شد
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.

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


علیرضا زارعی
تخصص : توسعه دهنده وب
@aliwebto 4 سال پیش مطرح شد
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 4 سال پیش مطرح شد
0

@aliwebto

ممنون

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


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

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

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


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

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


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

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


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

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


Paradox
تخصص : در حال یادگیری
@paradox 4 سال پیش آپدیت شد
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
@arminrahmati999 4 سال پیش مطرح شد
0

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

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

Paradox
تخصص : در حال یادگیری
@paradox 4 سال پیش آپدیت شد
0

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


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

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