مرجع سريع

ورقة غش إطار العمل Phoenix

دليل مرجعي شامل لإطار عمل Phoenix في Elixir: البداية السريعة، تخطيط المجلدات، التوجيه ومسارات التدفق في Plug.Conn، والتوليد الآلي.

· تاريخ النشر

Phoenix هو إطار عمل ويب موثوق وفائق الإنتاجية مبني على بيئة تشغيل Elixir و Erlang BEAM.

البداية السريعة والتثبيت (Quickstart)

# تثبيت مدير الحزم Hex وأداة توليد Phoenix
mix local.hex
mix archive.install hex phx_new

# إنشاء تطبيق Phoenix جديد مع دعم PostgreSQL
mix phx.new my_app

# تشغيل خادم التطوير التفاعلي
mix phx.server

تخطيط مجلدات التطبيق (Application Directory Layout)

my_app/
├── assets/          # أصول الواجهة الأمامية (esbuild و Tailwind CSS)
├── config/          # إعدادات البيئة (dev و test و prod)
├── lib/
│   ├── my_app/      # منطق نطاق الأعمال الأساسي ومخططات Ecto
│   ├── my_app.ex
│   └── my_app_web/  # طبقة العرض والويب (Controllers و Views و Router)
│       ├── controllers/
│       ├── router.ex
│       └── endpoint.ex
├── priv/
│   └── repo/        # ترحيلات قاعدة البيانات وبيانات البذور
└── test/            # مجموعات اختبارات ExUnit

المتحكمات وأنابيب التدفق (Controllers & Pipelines)

يستخدم Phoenix بنية Plug.Conn ككائن تحويل موحد لطلبات HTTP:

defmodule MyAppWeb.UserController do
  use MyAppWeb, :controller

  def show(conn, %{"id" => id}) do
    user = MyApp.Accounts.get_user!(id)

    conn
    |> put_status(200)
    |> render("show.html", user: user)
  end

  def api_index(conn, _params) do
    users = MyApp.Accounts.list_users()
    json(conn, %{data: users})
  end
end

المولدات وسياقات العمل (Generators & Contexts)

# توليد سياق CRUD كامل لقوالب HTML مع المخطط والمتحكم
mix phx.gen.html Accounts User users name:string email:string:unique

# توليد موارد واجهات البرمجة بصيغة JSON
mix phx.gen.json Catalog Product products title:string price:decimal

# تشغيل ترحيلات قاعدة البيانات
mix ecto.migrate

مراجع ذات صلة

موضوعات ذات صلة