نمایش نتایج 1 تا 9 از 9

نام تاپیک: ذخیره اطلاعات 3 مدل مرتبط

  1. #1
    کاربر دائمی آواتار reza.palang
    تاریخ عضویت
    دی 1385
    محل زندگی
    میون یهک جفت کروشه
    پست
    299

    ذخیره اطلاعات 3 مدل مرتبط

    با سلام مجدد
    من می خوام توی یک فرم، اطلاعاتی رو وارد کنم که مال 3 تا مدل متفاوت هست که
    model1 hasMany model2 HABTM model3
    ولی اطلاعات مدل شماره 3 ذخیره نمیشه.
    این رو هم بگم که توی کنترولر از saveAll() استفاده کردم

  2. #2
    کاربر دائمی آواتار reza.palang
    تاریخ عضویت
    دی 1385
    محل زندگی
    میون یهک جفت کروشه
    پست
    299

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

    آرایه data به این صورت هست که باید ذخیره بشه.
    مدل3 و ارتباطاتش ذخیره نمیشه
    [data] => Array
    (
    [Model1] => Array
    (
    [field1] => some info
    [field2] => some info
    )

    [Model2] => Array
    (
    [0] => Array
    (
    [field1] => some info
    [field2] => some info
    [field3] => some info
    )
    )

    [Model3] => Array
    (
    [0] => Array
    (
    [field1] => some info
    )
    )
    )

  3. #3

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

    احیاناً مدل 3 دارای فیلد id هست و اون دوتا مدل دیگه بدون id هستند یا بلعکس. اینجوری فکر میکنم اگر قبل از saveAll از create استفاده شده باشه اجازه آپدیت یا اینسرت مدل شامل آیدی را نمیده

  4. #4
    کاربر دائمی آواتار zoghal
    تاریخ عضویت
    شهریور 1383
    محل زندگی
    همدان
    سن
    41
    پست
    401

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

    کر فرم تون رو هم قرار بدید

  5. #5
    کاربر دائمی آواتار reza.palang
    تاریخ عضویت
    دی 1385
    محل زندگی
    میون یهک جفت کروشه
    پست
    299

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

    این کد فرم هست

    <div class="form">
    <?php echo $form->create('Model1');?>
    <fieldset>
    <legend>افزودن</legend>
    <?php
    // create the form inputs
    echo $form->input('Model1.first_name', array('label'=>'نام: *'));
    echo $form->input('Model1.last_name', array('label'=>'نام خانوادگي: *'));

    // create the form inputs
    echo $form->input('Model2.0.name', array('label'=>'نام: *'));
    echo $form->input('Model2.0.model3s', array('label'=>' شناسه هاي مدل 3 (با کاما از هم جدا شوند):'));
    ?>
    </fieldset>
    <center> <?php echo $form->end('تاييد');?> </center>
    </div>


    و این هم کد بخشی که اطلاعات مدل سوم رو برای ذخیره آماده می کنه
    <?php
    $this->Model1->create();

    // in tabe meghdare "$this->data['Model2'][0]['model3s']" ra migire va az jahai ke camma dashte bashe un ro mishkane va be araye tabdil mikone
    $model3s_id = $this->_parse_model3s($this->data['Model2'][0]['model3s']);

    // araye tolid shode dar khate bala inja set mishe
    $this->data['Model3'] = $model3s_id;
    ?>

  6. #6
    کاربر دائمی آواتار zoghal
    تاریخ عضویت
    شهریور 1383
    محل زندگی
    همدان
    سن
    41
    پست
    401

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

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

    debug($this->data);



    مورد بعدی بفرمائید با چه ورژنی کار میکنید. ؟ اگر با نسخه 1.2.5 به پائین کار میکنید.
    یکبار با ورژن های 1.3 امتحان بزنید.

  7. #7
    کاربر دائمی آواتار reza.palang
    تاریخ عضویت
    دی 1385
    محل زندگی
    میون یهک جفت کروشه
    پست
    299

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

    خروجی این هست

    (
    [Model1] => Array
    (
    [field1] => some info
    [field2] => some info
    )

    [Model2] => Array
    (
    [0] => Array
    (
    [field1] => some info
    [field2] => some info
    [field3] => some info
    )

    )

    [Model3] => Array
    (
    [0] => some info
    )

    )


    ورژنش 1.2.5 هست
    وقتی از مدل2 استفاده میکنم مشکلی نداره و اطلاعات مدل3 بدون مشکل ذخیره میشن

  8. #8

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

    چون مدل 2 با مدل 3 رابطه چند به چندی داره پس باید مدل چهارمی باشه بین این دو مدل که رابطه ها درست در بیاد.
    model1 hasMany model2 HABTM model3
    این یکم مبهمه. رابطه ها دقیق بگید

  9. #9
    کاربر دائمی آواتار reza.palang
    تاریخ عضویت
    دی 1385
    محل زندگی
    میون یهک جفت کروشه
    پست
    299

    نقل قول: ذخیره اطلاعات 3 مدل مرتبط

    نقل قول نوشته شده توسط maysamscript مشاهده تاپیک
    چون مدل 2 با مدل 3 رابطه چند به چندی داره پس باید مدل چهارمی باشه بین این دو مدل که رابطه ها درست در بیاد.

    این یکم مبهمه. رابطه ها دقیق بگید
    اون دیگه مدل نمیخواد. فقط یک جدول واسط لازم داره که ستون های اون (model2_id & model3_id) هست. اون جدول موجود هست. همون طور هم که گفتم این رابطه وقتی از مدل2 برای ذحیره استهاده میکنم درست کار می کنه ولی از مدل1 مشکل دداره
    ...............
    بذارید سوال رو جور دیگه ای بپرسم:
    $this->data

    آرایه این متغیر به چه صورت باید باشه تا من اطلاهات هر 3 مدل رو با ارتباطاتش درست ذخیره کنه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •