今天是星期五吗
2025 is 1% complete.
:sjzjams
sjzjams

以下是对网页内容的详尽笔记:

项目简介

  • 项目名称:renhai-lab/easy-homeassistant
  • 项目描述:Homeassistant 极简安装法,通过 Docker 容器运行 Home Assistant Core,不包含 Supervisor 和 Add-ons,但可以通过自己运行 Docker 容器来扩展,安装简单,不依赖特定硬件。

安装指南

官方资源

安装步骤

  1. 准备设备:需要一台 Windows、Mac 或 Linux 设备。
  2. 安装 Docker

    • 国外环境:

      wget -qO- get.docker.com | bash
    • 中国环境:

      curl -fsSL https://get.docker.com -o get-docker.sh

      sh get-docker.sh --mirror=Aliyun

  3. 配置镜像源(可选):

    • 由于中国科学技术大学(USTC)的 Docker 镜像源已限制为仅供校内网络使用,可以使用 Cloudflare Worker 上的代理,例如 ciiii/cloudflare-docker-proxy
    • 配置方法:

      sudo mkdir -p /etc/docker
      sudo tee /etc/docker/daemon.json <<<'EOF'
      {
      "registry-mirrors": ["http://mirrors.ustc.edu.cn";]
      }
      EOF
      sudo systemctl daemon-reload
      sudo systemctl restart docker
  4. 部署 Home Assistant

    • 创建文件夹:

      mkdir ha
      cd ha
    • 创建 docker-compose.yml 文件:

      touch docker-compose.yml
      nano docker-compose.yml # 或使用 vim
    • 填写 docker-compose.yml 文件内容:

      services:
      homeassistant:

      container_name: homeassistant
      image: ghcr.io/home-assistant/home-assistant:stable  # 中国地区镜像地址:ghcr.nju.edu.cn/home-assistant/home-assistant:stable
      volumes:
        - &quot;./config:/config&quot;
        - &quot;/etc/localtime:/etc/localtime:ro&quot;
        - &quot;/run/dbus:/run/dbus:ro&quot;  # 蓝牙设备需要
      environment:
        - SET_CONTAINER_TIMEZONE=true
        - CONTAINER_TIMEZONE=Asia/Shanghai
      restart: unless-stopped
      privileged: true</code></pre></li><li><p>运行:</p><pre><code class="lang-bash">docker compose up --build -d  # -d 后台运行

      docker compose logs -f # 查看日志,按 Ctrl+C 退出

    • 访问:http://localhost:8123

高级配置

安装 Node-RED

  • docker-compose.yml 文件中新增以下内容:

    services:
    homeassistant:

    # 现有内容
    

    node-red:

    image: nodered/node-red
    container_name: nodered
    environment:
      - TZ=Asia/Shanghai
    ports:
      - &quot;1880:1880&quot;
    volumes:
      - ./node-red-data:/data
    depends_on:
      - homeassistant</code></pre></li><li><p>安装 <code>node-red-contrib-home-assistant-websocket</code>:</p><ul><li><p>通过命令行:</p><pre><code class="lang-bash">docker compose exec node-red bash

    npm config set registry https://registry.npm.taobao.org
    npm install node-red-contrib-home-assistant-websocket -y

    按 Ctrl+D 退出

    docker compose restart node-red

  • 或通过图形界面:

    • 访问 http://localhost:1880,安装 node-red-contrib-home-assistant-websocket
    • 配置节点,例如拖入一个 HA 节点并双击进行配置。

设置 Node-RED 登录密码

  • 修改 node-red-data 文件夹中的 settings 文件,找到 adminAuth 部分。
  • 生成加密密码:

    node -e "console.log(require('bcryptjs').hashSync(process.argv[1], 8));" your-password-here
  • 将生成的加密密码填入 settings 文件中。

项目信息

  • Stars:15
  • Forks:2
  • Watchers:1

其他信息

  • 项目中包含 .ideaassets 文件夹,分别用于开发环境和存储静态资源。
  • 最近一次提交信息:

    • 提交者:renhai-lab
    • 提交时间:2025 年 1 月 4 日
    • 提交内容:更新 README.md 文件

2025年05月06日
sjzjams

再看色即是空旁边放着的纸巾是用来擦泪的[流泪]

2025年04月14日
sjzjams

好记性不如烂笔头之Laravel-PHP功能开发

为了昨天晚上在水里泡了一夜的鸡胸肉而写,php任何人都可以写的语言.
前情讲述:

  1. beikeshop项目的后端功能拓展
  1. 增加一个功能需要哪些步骤呢?
    1):Models层增加新表数据结构(ProductDetails
    2):Models层Product主表中增加新表数据结构对应关系 `public function details(): HasMany
    {

    return $this->hasMany(ProductDetails::class);

    }`
    3):Service层增createOrUpdate方法增加新关联表的处理
    4):Repositories层中增加商品详情中关联查询对象返回
    5):Resources层中商品详情页中增加details数据返回
    6):完善表单中前端功能

北京市-鸡胸肉泡了一晚上
2024年08月27日
sjzjams

还得是我霉

北京市
2024年08月23日
sjzjams

ProductController -->ProductRepo-->Product-->view 页面获取返回的$data['product'] 里面包含获取产品关联项的ID集合实体对象 例如商品名称等
在 Laravel 中,我该如何传递参数给视图呢?https://learnku.com/laravel/wikis/25612

/**
 * 展示产品的详细信息。
 *
 * 此方法处理展示单个产品的请求。它首先收集与产品相关的项的ID,
 * 然后获取产品的详细信息,并增加产品的浏览次数。
 * 接着,它准备与产品和相关产品有关的数据,并通过视图呈现给用户。
 *
 * @param Request $request HTTP请求对象,用于获取和处理请求数据。
 * @param Product $product 产品对象,代表需要展示的产品。
 * @return \Illuminate\View\View 返回包含产品详细信息和相关产品信息的视图。
 */
public function show(Request $request, Product $product)
{
    // 获取产品关联项的ID集合
    $relationIds = $product->relations->pluck('id')->toArray();
    
    // 获取产品的详细信息
    $product     = ProductRepo::getProductDetail($product);
    // 增加产品的浏览次数
    ProductRepo::viewAdd($product);

    // 准备产品详细信息和相关产品信息的数据
    $data        = [
        'product'   => (new ProductDetail($product))->jsonSerialize(),
        'relations' => ProductRepo::getProductsByIds($relationIds)->jsonSerialize(),
    ];

    // 应用插件钩子,允许第三方修改产品展示的数据
    $data = hook_filter('product.show.data', $data);

    // 返回展示产品详细信息的视图
    return view('product/product', $data);
}
2024年07月09日
Icefox Theme .