开源项目教程:DockYard Academy Curriculum
curriculum项目地址:https://gitcode.com/gh_mirrors/curricu/curriculum
项目目录结构及介绍
DockYard-Academy/
├── assets/
├── config/
├── lib/
├── priv/
├── test/
├── .formatter.exs
├── .gitignore
├── README.md
├── mix.exs
├── mix.lock
└── Dockerfile
- assets/: 存放项目的静态资源文件,如图片、样式表等。
- config/: 存放项目的配置文件,包括数据库配置、应用配置等。
- lib/: 存放项目的核心代码文件。
- priv/: 存放私有文件,如数据库迁移文件等。
- test/: 存放项目的测试文件。
- .formatter.exs: 代码格式化配置文件。
- .gitignore: Git忽略文件配置。
- README.md: 项目说明文档。
- mix.exs: 项目依赖和应用配置文件。
- mix.lock: 锁定项目依赖版本。
- Dockerfile: Docker容器配置文件。
项目启动文件介绍
项目的启动文件主要是 mix.exs
文件,它包含了项目的依赖管理、应用配置等信息。以下是 mix.exs
文件的主要内容:
defmodule Curriculum.MixProject do
use Mix.Project
def project do
[
app: :curriculum,
version: "0.1.0",
elixir: "~> 1.12",
start_permanent: Mix.env() == :prod,
deps: deps()
]
end
def application do
[
extra_applications: [:logger],
mod: {Curriculum.Application, []}
]
end
defp deps do
[
{:phoenix, "~> 1.6.0"},
{:phoenix_ecto, "~> 4.4"},
{:ecto_sql, "~> 3.6"},
{:postgrex, ">= 0.0.0"},
{:phoenix_live_view, "~> 0.16.0"},
{:floki, ">= 0.30.0", only: :test},
{:phoenix_html, "~> 3.0"},
{:phoenix_live_reload, "~> 1.2", only: :dev},
{:phoenix_live_dashboard, "~> 0.5"},
{:telemetry_metrics, "~> 0.6"},
{:telemetry_poller, "~> 1.0"},
{:gettext, "~> 0.18"},
{:jason, "~> 1.2"},
{:plug_cowboy, "~> 2.5"}
]
end
end
项目配置文件介绍
项目的配置文件主要存放在 config/
目录下,以下是一些主要的配置文件:
- config/config.exs: 项目的全局配置文件,包含数据库连接、应用配置等。
- config/dev.exs: 开发环境配置文件。
- config/test.exs: 测试环境配置文件。
- config/prod.exs: 生产环境配置文件。
以下是 config/config.exs
文件的部分内容:
import Config
config :curriculum, Curriculum.Repo,
username: "postgres",
password: "postgres",
database: "curriculum_dev",
hostname: "localhost",
pool_size: 10
config :curriculum, CurriculumWeb.Endpoint,
url: [host: "localhost"],
secret_key_base: "your_secret_key",
render_errors: [view: CurriculumWeb.ErrorView, accepts: ~w(html json), layout: false],
pubsub_server: Curriculum.PubSub,
live_view: [signing_salt: "your_signing_salt"]
import_config "#{config_env()}.exs"
这些配置文件定义了数据库连接、应用端点、密钥等重要信息,确保项目在不同环境下能够正确运行。
curriculum项目地址:https://gitcode.com/gh_mirrors/curricu/curriculum