Skip to content

Listing columns don't save properly w/ global preferences #14314

Description

@duncanmcclean

Bug description

I haven't been able to pinpoint the cause yet, but there seems to be a weird issue where the listing columns preference doesn't save correctly when you have it set as a global preference in resources/preferences.yaml.

Related: duncanmcclean/statamic-cargo#148

CleanShot.2026-03-20.at.19.11.06.mp4

How to reproduce

  1. Create an Orders collection
  2. Paste this into the blueprint YAML file:
title: Order
tabs:
  main:
    display: Main
    sections:
      -
        fields:
          -
            handle: title
            field:
              type: text
              required: true
              validate:
                - required
          -
            handle: date
            field:
              type: date
              display: Date
              listable: true
          -
            handle: customer
            field:
              type: users
              display: Customer
              listable: true
          -
            handle: grand_total
            field:
              type: money
              display: 'Grand Total'
              listable: true
          -
            handle: order_status
            field:
              type: text
              display: 'Order Status'
              listable: true
  sidebar:
    display: Sidebar
    sections:
      -
        fields:
          -
            handle: slug
            field:
              type: slug
              localizable: true
              validate: 'max:200'
  1. Create an entry and fill the values
  2. Create resources/preferences.yaml file:
collections:
  orders:
    columns:
        - date
        - title
        - customer
        - grand_total
        - order_status
  1. Visit the orders listing page
  2. Click to "Customize columns" and remove "Grand Total" and "Order Status" and click Save.
  3. See the columns change
  4. Go to another page
  5. Go back to the orders listing page
  6. See the columns are back again

Logs

Environment

Environment
Application Name: Cargo Sandbox
Laravel Version: 12.49.0
PHP Version: 8.4.19
Composer Version: 2.9.5
Environment: local
Debug Mode: ENABLED
URL: cargo-sandbox.test
Maintenance Mode: OFF
Timezone: UTC
Locale: en

Cache
Config: NOT CACHED
Events: NOT CACHED
Routes: NOT CACHED
Views: CACHED

Drivers
Broadcasting: log
Cache: file
Database: sqlite
Logs: stack / single
Mail: smtp
Queue: redis
Session: file

Storage
public/storage: NOT LINKED

Statamic
Addons: 1
Sites: 1
Stache Watcher: Enabled
Static Caching: Disabled
Version: 6.0.0 PRO

Statamic Addons
duncanmcclean/statamic-cargo: 1.x-dev

Cargo
Carts: file
Orders: file
Payment Gateways: Dummy, Stripe

Installation

Fresh statamic/statamic site via CLI

Additional details

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions