PDA

View Full Version : جداسازی Backend و frontend



p30tec
دوشنبه 20 مهر 1394, 19:21 عصر
سلام دوستان

من همیشه توی کد زدن طبق استانداردهای Yii کد میزنم برای مثال

کنترلر رو اینطوری مینویسم


public function actionLogin()
{
$model=new LoginForm;
if(isset($_POST['LoginForm']))
{
// collects user input data
$model->attributes=$_POST['LoginForm'];
// validates user input and redirect to previous page if validated
if($model->validate())
$this->redirect(Yii::app()->user->returnUrl);
}
// displays the login form
$this->render('login',array('model'=>$model));
}


و ویو رو اینطوری



<div class="form">
<?php echo CHtml::beginForm(); ?>

<?php echo CHtml::errorSummary($model); ?>

<div class="row">
<?php echo CHtml::activeLabel($model,'username'); ?>
<?php echo CHtml::activeTextField($model,'username') ?>
</div>

<div class="row">
<?php echo CHtml::activeLabel($model,'password'); ?>
<?php echo CHtml::activePasswordField($model,'password') ?>
</div>

<div class="row rememberMe">
<?php echo CHtml::activeCheckBox($model,'rememberMe'); ?>
<?php echo CHtml::activeLabel($model,'rememberMe'); ?>
</div>

<div class="row submit">
<?php echo CHtml::submitButton('Login'); ?>
</div>

<?php echo CHtml::endForm(); ?>
</div><!-- form -->



همینطور که میبینید از طریق متد render پارامتر $model رو به ویو ارسال میکنم و توی ویو هم ، هم فرمها با PHP ساخته میشن هم از $model توی ویو استفاده میشه

من خودم مشکلی با این قضیه ندارم مشکلم اینه که تا بحال تنهایی کار میکردم الان دارم تیمی کار میکنم . کسی که frontend کار هست چیزی از php بلد نیست و اینطوری نمیتونه با قسمت ویو ارتباط برقرار کنه که البته حق هم داره

دوستانی که زیاد تیمی کار کردن چیکار میکنن؟ من شنیدم نباید از render و ارسال پارامتر از طریق render استفاده کرد و همچنین فرم ها هم باید توسط frontend کار با html , js , angular js , jquery و اینطور جیزها پیاده بشن

میشه روی همین مثالی که من زدم یه نمونه بگید چطوری باید کار کرد که با frontend کاری که فقط html,css,jquery,angular js , js بلده هماهنگ بشم

اگه فقط یک نمونه ببینم مشکلم حل میشه

ممنون از کمکتون

desatir7316
سه شنبه 21 مهر 1394, 07:14 صبح
UI کارتون باید یه کم در خصوص اکشن و ... بدونه، در این حد که بتونه فقط یه ویو خام روی صفحه ببینه
بعد کدهای UI رو میزنه، بدون نیاز به YII ، یعنی همون HTML , ... و تحویل شما میده
بعد شما دیگه میاید به هر شکلی که مناسب می دونید اون کدها رو استفاده می کنید به شرطی که UI حفظ بشه

p30tec
سه شنبه 21 مهر 1394, 10:05 صبح
UI کارتون باید یه کم در خصوص اکشن و ... بدونه، در این حد که بتونه فقط یه ویو خام روی صفحه ببینه
بعد کدهای UI رو میزنه، بدون نیاز به YII ، یعنی همون HTML , ... و تحویل شما میده
بعد شما دیگه میاید به هر شکلی که مناسب می دونید اون کدها رو استفاده می کنید به شرطی که UI حفظ بشه

دوست عزیز خیلی ممنون از پاسختون
فقط یه مشکلی باقی میمونه ، اینطور که من از صحبت های شما برداشت کردم UI کار یه سری کد بدون PHP به من تحویل میده و من هم با توجه به نیاز سیستم تغییراتی توی کدها اعمال میکنم و در حقیقت یک سری کد PHP بهشون اضافه میکنم مثلا


echo 'Hello'.$user->name;


حالا ویو ما هم دارای PHP هست هم دارای کدهای کلاینت سایدی ، حالا مشکلم اینجاست که اگه الان به UI کار بگم فلان جای سیستم رو میخواهیم تغییر بدیم ، الان باید چیکار کرد؟ منظورم کاری که سریع ترین راه رو رفته باشیم و دوباره کاری نشه ، یعنی توی ایران وقتی گروهی کار میشه با اینطور موارد چیکار میکنن؟

p30tec
چهارشنبه 22 مهر 1394, 09:37 صبح
کسی نظری نداره؟

desatir7316
چهارشنبه 22 مهر 1394, 13:14 عصر
باید با کدهایی php که وارد می کنی، مشکل توی ui به وجود نیاری
اینکه احتمال داره تغییراتی به وجود بیاد و شما با ui کار صحبت کنید معمولا هست، ولی بهتره از اول طوری پیش برید که این مشکلات و تغییرات کم تر پیش بیاد

این کتاب هم بخونید بد نیست : https://gettingreal.37signals.com/

p30tec
چهارشنبه 22 مهر 1394, 15:13 عصر
شنیدم که تو این موارد نباید از متد render استفاده کرد ، آیا این صحت داره؟
اگه قراره از render استفاده نکرد با توجه به ساختار mvc که نمیشه توی کنترلر کدهای html زد خوب پس چطوری باید فایل ویو رو فراخوند؟
یا مگه میشه با تابع render بدون ارسال پارامتر توی ویو از پارامترها بهره برد

منظورم از هر دو سوال حالت استاندار هست نه اشتباه کد زدن

p30tec
چهارشنبه 22 مهر 1394, 15:14 عصر
در مورد این کتاب هم چون فعلا یه مقدار درگیرم میشه لطفا بگید کدوم فصل به نیاز من میپردازه که فعلا همون رو بخونم

p30tec
جمعه 24 مهر 1394, 14:16 عصر
شنیدم که تو این موارد نباید از متد render استفاده کرد ، آیا این صحت داره؟
اگه قراره از render استفاده نکرد با توجه به ساختار mvc که نمیشه توی کنترلر کدهای html زد خوب پس چطوری باید فایل ویو رو فراخوند؟
یا مگه میشه با تابع render بدون ارسال پارامتر توی ویو از پارامترها بهره برد

منظورم از هر دو سوال حالت استاندار هست نه اشتباه کد زدن
desatir7316 (http://barnamenevis.org/member.php?125754-desatir7316) عزیز
در مورد متد render نظری نداری؟