The issue is that the client may tell the server to update an xmodule
(_save_item) for the explicitly sent fields which may or may not include
graderType. If they do not include graderType, that means the partial
update doesn't include graderType. So, we need to check whether the
client's request includes stipulating a value for graderType. If it does,
we should update it (to None if that's the value). If it doesn't, then we
shouldn't change the value for graderType.


On Fri, Jan 3, 2014 at 2:32 PM, Adam <notifications@github.com> wrote:

> In cms/djangoapps/models/settings/course_grading.py:
>
> >              "location": unicode(location),
> >          }
> >
> >      @staticmethod
> >      def update_section_grader_type(descriptor, grader_type):
> > -        if grader_type is not None and grader_type != u"Not Graded":
> > +        if grader_type is not None and grader_type != GRADER_NOT_SUPPLIED:
>
> I'm actually increasingly having trouble understanding why we need to
> differentiate between problems that are explicitly set to non-graded and
> problems that do not have any grading supplied. Why do we need the two? How
> do they have different behaviors?
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/edx/edx-platform/pull/2067/files#r8642644>
> .
>