os2forms/os2forms

Drupal 8 OS2Form模块为丹麦市政府提供高级网络表单功能

安装次数: 6,886

依赖关系: 11

建议者: 0

安全: 0

星星: 1

关注者: 9

分支: 3

开放性问题: 7

类型:drupal-module

3.16.1 2024-09-20 12:48 UTC

README

安装

OS2Forms Drupal 8模块可以通过composer下载。

composer require os2forms/os2forms
drush en os2forms

如果您服务器上未安装Drupal,您需要首先安装它。有关如何安装drupal核心的更多信息,请参阅安装指南

我们建议您使用OS2Forms composer项目通过composer安装drupal。这样,您将获得一个包含OS2Forms模块的独立项目,以及您可能需要配置OS2Forms以满足特定需求的全部其他贡献模块。

composer create-project os2forms/composer-project:8.x-dev some-dir --no-interaction

为了在您的Drupal项目中获得更多好处,我们建议您使用OS2web作为Drupal的安装配置文件。此配置文件是上述提到的OS2Forms composer项目的一部分。

您可以使用以下命令轻松下载并安装到基于composer的Drupal项目的OS2web安装配置文件:

composer require os2web/os2web
drush si os2web --db-url=mysql://db_user:db_pass@mysql_host/db_name --locale=da --site-name="OS2Forms" --account-pass=admin -y

更新

OS2forms模块的更新过程与通常的Drupal 8模块类似。使用Composer内置命令列出有可更新包的包

composer outdated os2forms/os2forms

自动测试和代码质量

请参阅OS2Forms测试和CI信息

贡献

OS2Forms项目欢迎新的功能和当然也是bug修复。如果您有任何建议或发现项目中的bug,请随时在github存储库的问题跟踪器中创建问题。对于问题描述,我们期望您提供关于您的功能请求或bug报告的清晰和充分的信息。

代码审查政策

请参阅OS2Forms代码审查政策

Git命名约定

请参阅OS2Forms git命名约定

重要注意事项

网络表单

每个网络表单,包括所有设置,都以配置的形式存储在数据库中,并将(可能)通过Drupal配置管理系统导出为yml文件。然后可以通过git进行跟踪。

这意味着所有来自drupal数据库的网络表单设置将与存储在git存储库中配置文件夹的yml文件中的状态同步(导出/导入)。如果没有适当的操作,网络表单可能会在同步期间被删除或恢复到yml中的状态。

为了避免/预防这种行为,我们建议使用Config ignore模块,您可以在其中添加所有您不希望通过配置管理系统导出/导入的设置。

服务平台插件

CPR和CVR服务平台插件设置以配置的形式存储在数据库中,并将(可能)通过Drupal配置管理系统导出为yml文件。然后可以通过git进行跟踪。

如果您对git存储库有公开访问权限,插件的所有设置都将对第三方人员公开。

为了避免/预防这种行为,我们建议使用Config ignore模块,您可以在其中添加所有您不希望通过配置管理系统导出/导入的设置。

不稳定的功能

将提交导出到Word

由于以下问题,此功能尚未成为Webform和实体打印模块稳定版本的一部分:

要在Drupal项目中获得此功能,将通过Composer应用上述问题的补丁。

注意:如果您没有使用Composer下载os2forms模块,请注意您需要自行应用这些补丁。

编码标准

我们的编码通过GitHub Actions进行审核(参考:.github/workflows/pr.yml)。使用以下命令在本地运行检查。

PHP

docker run --rm --volume ${PWD}:/app --workdir /app itkdev/php8.1-fpm composer install
docker run --rm --volume ${PWD}:/app --workdir /app itkdev/php8.1-fpm composer coding-standards-check

# Fix (some) coding standards issues.
docker run --rm --volume ${PWD}:/app --workdir /app itkdev/php8.1-fpm composer coding-standards-apply

Markdown

docker run --rm --volume ${PWD}:/app --workdir /app node:20 yarn install
docker run --rm --volume ${PWD}:/app --workdir /app node:20 yarn coding-standards-check/markdownlint

# Fix (some) coding standards issues.
docker run --rm --volume ${PWD}:/app --workdir /app node:20 yarn coding-standards-apply/markdownlint

代码分析

我们使用PHPStan进行静态代码分析。

在独立Drupal模块上运行静态代码分析有点复杂,因此我们使用辅助脚本来运行分析

./scripts/code-analysis