کتاب آموزش برنامه نویسی Ext JS
برای اولین بار در ایران
Ext JS
در مورد Ext JS بیشتر بدانید
خرید کتاب
فریم ورک Backbone.JS بهترین دوست فریم ورک Laravel
۲۳ دی ۱۳۹۳
1659 بازدید
فریم ورک backbone

فریم ورک backbone

همانطور که می دانید فریم ورک Backbone به کد های درهم و شلوغ ساختار می بخشد.

فریم ورک Laravel 4 فرآیند ایجاد API های REST را تا حد امکان ساده می کند. کلید آن هم چگونگی بازگشت پیش فرض JSON از یک مسیر است.

می خواهیم تصور کنیم که نیاز به برگرداندن لیستی از تمام کاربران به صورت JSON داریم. می توانیم این کار را فقط با نوشتن یک خط کد انجام دهیم:

[codesyntax lang=”php”]

Route::get('users', function()
{
    return User::all();
});

[/codesyntax]

اگر این مسیر را اجرا کنید، کمی از JSON نمایش خواهد یافت مانند مورد زیر:

[codesyntax lang=”php”]

[{"id":1,"username":"jeffrey@example.com"},{"id":2,"username":"joe@example.com"}]

[/codesyntax]

به دنبال فایل password هستید؟ در فریم ورک Laravel، در درون مدل مربوط به جدول، می توانیم از طریق خصوصیت  $hidden  تعیین کنیم که کدام فایل از خروجی JSON مخفی باشد.

حال با استفاده از یک کتابخانه ی جاوا اسکریپتی مانند Backbone، می توانیم این داده را به آسانی واکشی کنیم.

[codesyntax lang=”php”]

var User = Backbone.Model.extend({});
var UsersCollection = Backbone.Collection.extend({
    model: User,
    url: '/users'
});
 
var users = new UsersCollection;
users.fetch();
 
users.toJSON(); // [Object, Object, Object]

[/codesyntax]

اگر بخواهیم فقط اطلاعات یک کاربر را واکشی کنیم چطور؟ ابتدا باید مسیر مناسب فریم ورک Laravel را بیابیم:

[codesyntax lang=”php”]

Route::get('users/{id}', function($id) {
    return User::find($id);
});

[/codesyntax]

همانطور که یاد گرفته ایم، این کد JSON را برای کاربر درخواست شده (منهای  password) باز می گرداند. سپس یک مدل Backbone ایجاد کرده و داده را واکشی می کنیم.

[codesyntax lang=”php”]

var User = Backbone.Model.extend({
    urlRoot: '/users'
});
 
var user = new User({ id: 1 });
user.fetch(); // { id: 1, username: 'jeffrey@example.com' }

[/codesyntax]




نظراتتان را با ما در میان بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

  1. حسین گفت:

    سلام
    میشه بیشتر در مورد کاربرد این کتابخانه(در آموزشی از لیندا این طور شرح داده شده بود) توضیح بدید؟