Внезапно у меня возникают проблемы с выполнением просмотра через Propel.
[wrapped: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'view_total_count_for_collection.ID' in 'field list']
Ну да. Это потому, что в представлении нет фактического столбца идентификатора! Так почему же вы построили модель вокруг несуществующего столбца?
Вот соответствующий раздел моего schema.yml, созданного propel: build-schema
view_total_count_for_collection:
_attributes: { phpName: ViewTotalCountForCollection }
collection_id: { phpName: CollectionId, type: INTEGER, size: '11', required: true }
asset_count: { phpName: AssetCount, type: BIGINT, size: '21', required: true, defaultValue: '0' }
pallet_received: { phpName: PalletReceived, type: INTEGER, size: '11', required: false }
case_received: { phpName: CaseReceived, type: INTEGER, size: '11', required: false }
unit_received: { phpName: UnitReceived, type: INTEGER, size: '11', required: false }
total_pallets_for_asset: { phpName: TotalPalletsForAsset, type: DECIMAL, size: '32', scale: '0', required: false }
total_cases_for_asset: { phpName: TotalCasesForAsset, type: DECIMAL, size: '41', scale: '0', required: false }
total_units_for_asset: { phpName: TotalUnitsForAsset, type: DECIMAL, size: '41', scale: '0', required: false }
Все нормально, насколько я понимаю. Другие взгляды, кажется, объявили магическое поле Id, и работали нормально, и дальнейшие исследования говорят мне, что это именно то, что делает Propel. Это не было проблемой раньше.
Однако теперь внезапно это вызывает проблему. И я не понимаю почему. Может ли кто-нибудь помочь мне решить эту проблему? Так почему же это конкретное определение в schema.yml НЕ имеет идентификатора? И зачем мне вообще вдруг понадобиться один?