راکت

ذخیره آرایه در لاراول با VueJS

3 پاسخ

سلام
قطعه کد پایین رو داخل VueJS دارم:

export default {
        props: [
            'post_url'
        ],
        data() {
            return {
                id: ۱,
                type: "",
                price: "",
                product: {
                    title: "",
                    types: [],
                }
            }
        },
        methods: {
            add() {
                this.product.types.push({
                    id: this.id,
                    type: this.type,
                    price: this.price
                });
                this.id++;
                this.type = "";
                this.price = "";
            },
            submit() {
                axios.post(this.post_url, this.product).then(response => console.log(response.data)).catch(error => console.log(error.response.data));
            }
        }
    }

داخل کنترلر لاراول هم چنین کدی دارم خیلی ساده:

Product::create($request->all());

حالا وقتی تو فرم Submit میزنم خطای Array to string conversion میگیرم.
کسی به این مشکل خورده؟

ثبت پرسش جدید

پاسخ‌ها

3
حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

این ارور زمانی رخ میده که شما یک آرایه رو میخواید به شکل رشته نمایش بدید یا جای استفاده کنید ببینید چی رو به شکل آرایه ارسال کردید

mahdi khanzadi
mahdi khanzadi
@khanzadimahdi

تخصص: Software engineer

فیلدی که قراره به صورت ارایه ذخیره بشه رو داخل مدل خودتون به صورت زیر cast کنید مشکلتون حل میشه

protected $casts = ['field' => 'array'];

شاید پاسخ شما همین‌جا باشد

علیرضا
علیرضا
@alirezaqrb

تخصص: خالی

مشکل ذخیره سازی در دیتابیس حل شد.
حالا می‌خوام داخل view نمایش بدم، وقتی داخل foreach قرار میدم، مشکل نداره که با json_encode نمایش میدم؟
منظورم اینه یه موقع غیر استاندارد نباشه.

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

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