bf4fb87a01
Anything older than 9.3 is unsupported by Postgres: https://www.postgresql.org/support/versioning/. I don't think we should claim support in our module for unsupported versions, particularly if we don't have CI on them. Since we're *only* running CI on 9.2 at the moment, that's the safe claim for our module support, even though it's already unsupported by Postgres. See https://docs.travis-ci.com/user/database-setup/#using-a-different-postgresql-version I'll raise a separate ticket about testing and supporting newer versions, it's out of scope for this PR. |
||
---|---|---|
_config | ||
code | ||
docs | ||
tests | ||
_register_database.php | ||
.editorconfig | ||
.gitattributes | ||
.scrutinizer.yml | ||
.travis.yml | ||
.upgrade.yml | ||
CHANGELOG | ||
code-of-conduct.md | ||
composer.json | ||
LICENSE | ||
phpcs.xml.dist | ||
phpunit.xml.dist | ||
README.md |
PostgreSQL Module Module
Maintainer Contact
- Sam Minnee (Nickname: sminnee) sam@silverstripe.com
Requirements
- SilverStripe 4.0
- PostgreSQL >=9.2
- Note: PostgreSQL 10 has not been tested
Installation
composer require silverstripe/postgresql
Configuration
Environment file
Add the following settings to your .env
file:
SS_DATABASE_CLASS=PostgreSQLDatabase
SS_DATABASE_USERNAME=
SS_DATABASE_PASSWORD=
See environment variables for more details. Note that a database will automatically be created via dev/build
.
Through the installer
Open the installer by browsing to install.php, e.g. http://localhost/install.php Select PostgreSQL in the database list and enter your database details
Usage Overview
See docs/en for more information about configuring the module.
Known issues
All column and table names must be double-quoted. PostgreSQL automatically lower-cases columns, and your queries will fail if you don't.
Ts_vector columns are not automatically detected by the built-in search filters. That means if you're doing a search through the CMS on a ModelAdmin object, it will use LIKE queries which are very slow. If you're writing your own front-end search system, you can specify the columns to use for search purposes, and you get the full benefits of T-Search.
If you are using unsupported modules, there may be instances of MySQL-specific SQL queries which will need to be made database-agnostic where possible.