﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
31701	Extend DeferredAttribute  & Remove unnecessary FileField.contrib_to_class ()	Sultan	nobody	"The model fields use, by default, the descriptor **DeferredAttribute** to access and process (if necessary) the data associated with them. This type of data represents the actual data in db column. I prefer to call it a “field data”.

To access the field data in instance dict, **Field.attname** is used as a key.

In addition to the field data, some other model fields (for example, ForeignKey) also use a ""client data"" of the attribute, the processing of which is performed by a particular descriptor. Such a descriptor is usually assigned to a model using **Field.name**. Its task is to present the same field data in a different format, the result of which differs from the result of Field.attname descriptor: `article.author` returns a User object, and `article.auther_id` returns a User object pk.
This feature is not used in FileField. Then why use FileField.name instead of FileField.attname for FileDescriptor?

I think it would be better if FileDescriptor uses FileField.attname and continue working with the DeferredAttribute class."	Cleanup/optimization	new	Database layer (models, ORM)	master	Normal				Unreviewed	1	0	0	0	1	0
