コード例 #1
0
ファイル: file.py プロジェクト: UPCnet/genweb.organs
class IFile(form.Schema):
    """ File: Per adjuntar els fitxers públics i/o privats
        A la part pública només fitxers PDF """

    fieldset('file',
             label=_(u'Tab file'),
             fields=['title', 'description', 'visiblefile', 'hiddenfile'])

    dexteritytextindexer.searchable('title')
    title = schema.TextLine(title=_PMF(u'label_title', default=u'Title'),
                            required=True)

    dexteritytextindexer.searchable('description')
    description = schema.Text(
        title=_PMF(u'label_description', default=u'Summary'),
        description=_PMF(u'help_description',
                         default=u'Used in item listings and search results.'),
        required=False,
        missing_value=u'',
    )

    visiblefile = NamedBlobFile(
        title=_(u"Please upload a public file"),
        description=_(u"Published file description"),
        required=False,
    )

    hiddenfile = NamedBlobFile(
        title=_(u"Please upload a reserved file"),
        description=_(u"Reserved file description"),
        required=False,
    )
コード例 #2
0
ファイル: propostapunt.py プロジェクト: UPCnet/genweb.organs
class IPropostapunt(form.Schema):
    """
    """
    title = schema.TextLine(
        title=_(u'Title'),
        required=True
    )

    description = schema.Text(
        title=_(u'label_description', default=u'Summary'),
        required=False,
    )

    directives.widget(text=WysiwygFieldWidget)
    text = schema.Text(
        title=_(u"Text"),
        required=False)

    signsFile = NamedBlobFile(
        title=_(u"Please upload a public file"),
        description=_(u"Published file description"),
        required=False,
    )

    anexFile = NamedBlobFile(
        title=_(u"Please upload a reserved file"),
        description=_(u"Reserved file description"),
        required=False,
    )
コード例 #3
0
class IABCTune(form.Schema):

    dexteritytextindexer.searchable('abc')
    form.primary('abc')
    abc = schema.Text(title=_(u"Tune abc"),
                      description=_(u'The tune in abc format'),)

    dexteritytextindexer.searchable('tunekeys')
    form.omitted('tunekeys')
    tunekeys = schema.List(title=u'keys',
                           description=u'set by abc content',
                           required=False,
                           value_type=schema.TextLine(required=False),
                           )

    dexteritytextindexer.searchable('tunetype')
    form.omitted('tunetype')
    tunetype = schema.TextLine(title=_(u"The type of the tune"),
                               description=_(u"from the field R:"),
                               required=False,
                               )
    # NOTE: as specified in the v2.1 standard, A: field is deprecated
    # so, only O: is used to specified country and areas... separated
    # by ';'
    dexteritytextindexer.searchable('tunearea')
    form.omitted('tunearea')
    tunearea = schema.TextLine(title=tunearea_title,
                               description=tunearea_desc,
                               required=False,
                               )
    dexteritytextindexer.searchable('tunecountry')
    form.omitted('tunecountry')
    tunecountry = schema.TextLine(title=tunecountry_title,
                                  description=_(u"The country"),
                                  required=False,
                                  )

    form.omitted('score')
    score = NamedBlobImage(title=_(u"Score"),
                           description=score_desc,
                           required=False,)

    form.omitted('pdfscore')
    pdfscore = NamedBlobFile(title=_(u"PDF Score"),
                             description=_(u'The score of the tune as PDF'),
                             required=False,
                             )

    form.omitted('midi')
    midi = NamedBlobFile(title=_(u"Midi"),
                         description=_(u'Midi sound of the tune'),
                         required=False,
                         )
    form.omitted('sound')
    sound = NamedBlobFile(title=_(u"sound"),
                          description=_(u'The mp3 sound of the tune'),
                          required=False,
                          )
コード例 #4
0
class IABCTuneSet(form.Schema):

    form.omitted('combinedTitle')
    """this combinedTitle depends of the tunes titles
    """
    combinedTitle = schema.TextLine(
        title=_(u"combined set title"),
        description=_(u"."),
    )
    form.omitted('abc')
    abc = schema.Text(
        title=_(u"Tune Set abc"),
        description=_(u'The tunes set in abc format'),
    )

    form.omitted('score')
    """The score of the tunes set as png image
    """
    score = NamedBlobImage(
        title=_(u"Score"),
        description=_(u'.'),
        required=False,
    )

    form.omitted('pdfscore')
    """The score of the tunes set as PDF
    """
    pdfscore = NamedBlobFile(
        title=_(u"PDF Score"),
        description=_(u'.'),
        required=False,
    )

    form.omitted('midi')
    """Midi sound of the tunes set
    """
    midi = NamedBlobFile(
        title=_(u"Midi"),
        description=_(u'.'),
        required=False,
    )

    form.omitted('sound')
    """The mp3 sound of the tunes set
    """
    sound = NamedBlobFile(
        title=_(u"sound"),
        description=_(u'.'),
        required=False,
    )
コード例 #5
0
class IRVSpot(form.Schema):
    """
    Uses IDublinCore
    """

    form.mode(spot_id='display')
    spot_id = schema.Int(title=_(u"Spot Id"),
                         description=_(u""),
                         required=False,
                         default=0,)

    spot_size = schema.TextLine(title=_(u"Size"),
                                description=_(u"RV Spot Dimensions"),
                                required=False)

    spot_cost = schema.Choice(title=_(u"Cost"),
                              description=_(u"How much to rent this spot?"),
                              vocabulary=spotCostVocabulary(),
                              required=False)

    homeowner = schema.Choice(title=_(u"Homeowner"),
                              description=_(u"Select the homeowner that is renting this spot."),
                              vocabulary="docent.hoa.rvspots.homeowners",
                              required=False)

    homeowner_contract = NamedBlobFile(title=_(u"Owner Contract"),
                                        description=_(u"Upload the owner's contract here."),
                                        required=False)

    renter = schema.Choice(title=_(u"Renter"),
                           description=_(u"Select the renter that will use this spot."),
                           vocabulary="docent.hoa.rvspots.rentersandowners",
                           required=False)

    renter_contract = NamedBlobFile(title=_(u"Renter Contract"),
                                    description=_(u"Upload the renter's contract here."),
                                    required=False)

    key_number = schema.TextLine(title=_(u"Key Number"),
                                 required=False)

    occupancy = schema.Datetime(title=_(u"Occupancy Date"),
                                description=_(u"Start date of occupancy."),
                                required=False)

    insurance_file = NamedBlobFile(title=_(u"Insurance File"),
                                        description=_(u"Upload the insurance file."),
                                        required=False)
コード例 #6
0
class ISablonTemplate(IDocumentSchema):

    model.primary('file')
    file = NamedBlobFile(
        title=_(u'label_sablon_template_file', default='File'),
        required=True,
    )
コード例 #7
0
class IDocumentArtifact(form.Schema):
    """
    Content type
    """

    document_artifact = NamedBlobFile(title=u"Document Artifact")

    coverage = TextLine(title=u"Coverage", required=False)

    dublin_core_format = TextLine(title=u"Format", required=False)

    identifier = TextLine(title=u"Identifier", required=False)

    language = TextLine(title=u"Language", required=False)

    publisher = TextLine(title=u"Publisher", required=False)

    relation = TextLine(title=u"Relation", required=False)

    rights = TextLine(title=u"Rights", required=False)

    source = TextLine(title=u"Source", required=False)

    subject = TextLine(title=u"Subject", required=False)

    dublin_core_type = TextLine(title=u"Type", required=False)
コード例 #8
0
class IPODTemplate(model.Schema):
    """
    PODTemplate dexterity schema.
    """

    model.primary('odt_file')
    form.widget('odt_file', NamedFileWidget)
    odt_file = NamedBlobFile(title=_(u'ODT File'), )

    form.omitted('initial_md5')
    initial_md5 = schema.TextLine(
        description=
        u'Initially loaded file md5. Will be compared with os file md5.')

    form.omitted('style_modification_md5')
    style_modification_md5 = schema.TextLine(
        description=u'Working md5, stored when styles only update.')

    form.widget('enabled', RadioFieldWidget)
    enabled = schema.Bool(
        title=_(u'Enabled'),
        default=True,
        required=False,
    )

    form.widget('style_template', SelectWidget)
    style_template = schema.List(
        title=_(u'Style template'),
        description=_(
            u'Choose the style template to apply for this template.'),
        value_type=schema.Choice(
            source='collective.documentgenerator.StyleTemplates'),
        required=True,
    )
コード例 #9
0
class IMusicMan(model.Schema):
    """ Add Music Man behavior """

    model.fieldset('musicman',
                   label=_(u"musicman / recommend"),
                   fields=[
                       'mmTitle',
                       'mmInfo',
                       'mmImage',
                       'mmAudio',
                   ])

    mmTitle = schema.TextLine(
        title=_(u"Music Man Title"),
        required=False,
    )

    mmInfo = schema.Text(
        title=_(u"Music Man Infomation"),
        required=False,
    )

    mmImage = NamedBlobImage(
        title=_(u"Music Man Image"),
        required=False,
    )

    mmAudio = NamedBlobFile(
        title=_(u"Music Man Audio"),
        description=_(u"Audio file format: *.mp3"),
        required=False,
    )
コード例 #10
0
class IBackgroundImageTile(model.Schema):

    image = NamedBlobFile(
        title=_(u'Upload an image to use as background'),
        required=False,
    )

    background_color = schema.TextLine(
        title=_(u"Enter a CSS color value to use as a background"),
        description=_(
            u"This will be overlayed on top of the background image"),
        required=False,
    )

    widget(scale=RadioFieldWidget)
    scale = schema.Choice(
        title=_(u'Select maximum display size'),
        vocabulary='plone.app.vocabularies.ImagesScales',
        default='banner',
    )

    parallax = schema.Bool(
        title=_(u'Enable parallax scroll effect on background image'),
        default=False,
    )

    content = RichText(title=_(u"HTML"), required=True)
コード例 #11
0
class IImportFirstStep(model.Schema):

    source = NamedBlobFile(
        title=_(u"File"),
        description=_(u"CSV file that contains the classification tree"),
        required=True,
    )

    separator = schema.Choice(
        title=_(u"CSV Separator"),
        description=_(u"Separator character to use"),
        vocabulary="collective.classification.vocabularies:csv_separator",
        required=True,
    )

    has_header = schema.Bool(
        title=_(u"Include CSV header"),
        description=_(u"The CSV file contains an header row"),
        default=True,
        required=False,
    )

    @invariant
    def validate_csv_data(obj):
        return utils.validate_csv_data(obj)
コード例 #12
0
class ICommentFile(form.Schema, IImageScaleTraversable):
    """
    Review comment attached file
    """

    reviewer = RelationChoice(
        title=_('Reviewer'),
        source=ObjPathSourceBinder(Type="Profile", groups="ExternalReviewer"),
        required=True,
    )

    acceptOrReject = schema.Choice(
        title=_(u'Result of Review'),
        vocabulary=AcceptOrReject,
        default=None,
        required=False,
    )

    externalReviewerComment = schema.Text(
        title=_(u'External reviewer comment'),
        required=False,
    )

    reviewCommentAttached = NamedBlobFile(
        title=_(u'External reviewer comment attached file'),
        required=False,
    )
コード例 #13
0
ファイル: interfaces.py プロジェクト: mingtak/i8d.content
class IProvider(Interface):
    """ 供應商檔案 """
    title = schema.TextLine(
        title=_(u"Provider Name"),
        required=True,
    )

    description = schema.Text(
        title=_(u"Description"),
        required=False,
    )

    image = NamedBlobImage(
        title=_(u"Provider Logo"),
        description=_(u"Provider logo image"),
        required=False,
    )

    webSite = schema.URI(
        title=_(u"Website"),
        description=_(u"Provider website url, must include http:// or https://"),
        required=False,
    )

    form.write_permission(productsFile='cmf.ReviewPortalContent')
    productsFile = NamedBlobFile(
        title=_(u"Products File"),
        description=_(u"zip file, include a .cvs file and image files"),
        required=False,
    )
コード例 #14
0
class IAnthroReport(Interface):
    title = schema.TextLine(
        title=_(u'Title'),
        required=True
    )

    description = schema.Text(
        title=_(u'Description'),
        required=False
    )

    cover_image = NamedBlobImage(
        title=_(u"Current Cover Image."),
        required=True
    )

    openDate = schema.Date(
        title=_(u"Full Text Open Date"),
        required=True
    )

    file = NamedBlobFile(
        title=_(u'Full File'),
        required=False
    )
コード例 #15
0
ファイル: interfaces.py プロジェクト: manhinli/org.bccvl.site
class IProjectionExperiment(IExperiment):

    # TODO: ignore context here? don't really need to store this?
    directives.widget(
        'species_distribution_models',
        ExperimentSDMFieldWidget,
        experiment_type=[ISDMExperiment.__identifier__],
        errmsg=u"Please select at least 1 Species Distribution Model")
    species_distribution_models = Dict(
        title=u'Species Distribution Models',
        key_type=TextLine(),
        value_type=Dict(key_type=TextLine(), value_type=Dict()),
        default=None,
        required=True,
    )

    directives.widget(
        'future_climate_datasets',
        FutureDatasetsFieldWidget,
        errmsg=u"Please select at least 1 future climate dataset.",
        vizclass=u'bccvl-absence-viz')
    future_climate_datasets = List(title=u'Future Climate Data',
                                   value_type=TextLine(),
                                   default=None,
                                   required=True)

    directives.mode(projection_region=HIDDEN_MODE)
    directives.widget('projection_region', TextAreaFieldWidget)
    projection_region = NamedBlobFile(
        title=u"Projection Region",
        description=
        u"GEOJson describing the geographic region the onto which the selected model is projected,",
        required=False,
    )
コード例 #16
0
class IProductManualBehavior(model.Schema):
    """Product manual behavior.
    """
    manual = NamedBlobFile(title=_(u'manual_title', default=u'Product Manual'),
                           description=_(u'manual_description',
                                         default=u'Manual of Product'),
                           required=False)
コード例 #17
0
class ITaxonomyForm(Interface):
    taxonomy = schema.TextLine(title=_(u"Taxonomy"), required=False)

    field_title = schema.TextLine(
        title=_(u"Title"),
        description=_("Will be used for the field title as well"),
        required=True)

    field_description = schema.TextLine(
        title=_(u"Description"),
        description=_("Will be used for the field description as well"),
        required=True)

    default_language = schema.TextLine(
        title=_(u"Default language"),
        description=_("For example en, da, de, etc."),
        required=True)

    import_file = NamedBlobFile(title=_(u"Upload VDEX xml file"),
                                description=_(u" "),
                                required=False)

    is_required = schema.Bool(title=_(u"Required"), required=True)

    is_single_select = schema.Bool(title=_(u"Single select"), required=True)

    write_permission = schema.Choice(
        title=_(u"Write permission"),
        required=False,
        vocabulary='collective.taxonomy.permissions')
コード例 #18
0
ファイル: interfaces.py プロジェクト: manhinli/org.bccvl.site
class IMultiSpeciesDataset(IDatasetCollection):
    """A species dataset based on a single file"""

    model.primary('file')
    file = NamedBlobFile(title=_(u"File"),
                         description=_(u"Data content"),
                         required=True)
コード例 #19
0
class IAudio(form.Schema):
    """ Audio: only audio files are permitted """

    fieldset('audio',
             label=_(u'Tab audio'),
             fields=['title', 'description', 'file']
             )

    dexteritytextindexer.searchable('title')
    title = schema.TextLine(
        title=_PMF(u'label_title', default=u'Title'),
        required=True
    )

    dexteritytextindexer.searchable('description')
    description = schema.Text(
        title=_PMF(u'label_description', default=u'Summary'),
        description=_PMF(
            u'help_description',
            default=u'Used in item listings and search results.'
        ),
        required=False,
        missing_value=u'',
    )

    file = NamedBlobFile(
        title=_(u"Please upload a media file"),
        description=_(u"Only audio files are permitted."),
        required=True,
    )
コード例 #20
0
class IBoosterClubsFolder(form.Schema):
    """
    Uses IDublinCore
    """

    executive_secretary_email = Email(
        title=_(u"Executive Secretary Email"),
        description=_(u"Email address of the Executive Secretary"),
        required=True,
    )

    absence_notice = schema.Text(
        title=_(u"Absence Notice"),
        description=_(u"Text of email to be sent to absent booster club officers. "
                      u"This is a multi line field and line breaks will be recognized. "
                      u"The salutation should not be part of this message."),
        required=True,
        defaultFactory=getAbsenceDefaultText,
    )

    training_absence_notice = schema.Text(
        title=_(u"Training Absence Notice"),
        description=_(u"Text of email to be sent to absent booster members who did not attend the scheduled training. "
                      u"This is a multi line field and line breaks will be recognized. "
                      u"The salutation should not be part of this message."),
        required=True,
        defaultFactory=getTrainingAbsenceDefaultText,
    )

    agreement_file = NamedBlobFile(
        title=_(u"Agreement File"),
        description=_(u"This file is to be downloaded by club for the approval process."),
        required=False,
    )
コード例 #21
0
ファイル: interfaces.py プロジェクト: manhinli/org.bccvl.site
class IBlobDataset(IDataset):

    # TODO: a primary field should not be required. possible bug in plone core
    model.primary('file')
    file = NamedBlobFile(title=_(u"File"),
                         description=_(u"Data content"),
                         required=True)
コード例 #22
0
ファイル: audiovideo.py プロジェクト: educorvi/edi.course
class IAudioVideo(model.Schema):
    """ Marker interface and Dexterity Python Schema for Audio Video
    """

    vortext = RichText(title=u"Strukturierter Text vor dem Audio oder Video",
                       required=False)

    datei = NamedBlobFile(
        title=u"Audio- oder Video-Datei",
        description=
        u"Möglichkeit zum Hochladen einer Audiodatei im *.mp3 Format oder Videodatai im *.mp4 Format.",
        required=False)

    poster = NamedBlobImage(
        title=u"Vorschaubild für Video-Datei",
        description=
        u"Möglichkeit zum Hochladen eines Vorschaubildes für das Video.",
        required=False)

    embed = schema.Text(
        title=u"Einbettungscode einer Videoplattform",
        description=
        u"Als Alternative zur Datei kann hier ein Einbettungscode einer Videoplattform\
                                    z.B. YouTube, Vimeo eingetragen werden.",
        required=False)

    nachtext = RichText(title=u"Strukturierter Text nach dem Audio oder Video",
                        required=False)
コード例 #23
0
class IOGGAudioFile(form.Schema):
    ''' Representa um Arquivo de Audio OGG'''

    model.primary('file')
    file = NamedBlobFile(title=_(u'File'),
                         description=_(u'Please upload a audio file.'),
                         required=True,
                         constraint=validate_ogg)
コード例 #24
0
class IMPEGAudioFile(form.Schema):
    """ Representa um Arquivo de Audio MPEG"""

    model.primary('file')
    file = NamedBlobFile(title=_(u'File'),
                         description=_(u'Please upload a audio file.'),
                         required=True,
                         constraint=validate_mpeg)
コード例 #25
0
class IStyleTemplate(model.Schema):
    """
    StyleTemplate dexterity schema.
    """

    model.primary('odt_file')
    form.widget('odt_file', NamedFileWidget)
    odt_file = NamedBlobFile(title=_(u'ODT File'), )
コード例 #26
0
class IStaticDocument(model.Schema, utils.IUserMixin, utils.IVotingMixin):

    title = schema.TextLine(
        title=u'Document name',
        required=True,
    )

    description = schema.Text(
        title=u'Document description',
        required=True,
    )

    file = NamedBlobFile(
        title=u'File',
        required=True,
    )

    file_thumb = NamedBlobFile(
        title=u'File thumb',
        description=u'Thumbnail of the file (if PDF) - will be generated automatically.',
        required=False,
    )

    doc_in_step = RelationList(
        title=u'In pilgrimage steps',
        description=u'Select pilgrimage steps where this document will appear.',
        default=[],
        value_type=RelationChoice(
            source=ObjPathSourceBinder(
                path={'query': '/en/pilgrimage-steps'},
            ),
        ),
        required=False,
    )

    featured_doc_in_step = RelationList(
        title=u'As featured in pilgrimage steps',
        description=u'Select pilgrimage steps where this document will appear as a featured resource.',
        default=[],
        value_type=RelationChoice(
            source=ObjPathSourceBinder(
                path={'query': '/en/pilgrimage-steps'},
            ),
        ),
        required=False,
    )
コード例 #27
0
ファイル: proposar_punt.py プロジェクト: UPCnet/genweb.organs
class IProposar(form.Schema):
    """ Enviar missatge als membres /mail_message"""
    form.mode(intro='display')
    intro = TextLine(description=_(u"""
            La inclusió de punts nous en l'ordre del dia a iniciativa
            dels membres del Consell de Govern es regula en l'article
            7 del Reglament del Consell de Govern.
            En cas que els membres del Consell de Govern vulguin presentar
            punts nousque no han passat per cap comissió per alguna de les
            raons previstes en l'article, cal emplenar el formulari següent,
            que es tramet automàticament a la Secretaria General. Perquè la
            petició sigui admesa a tràmit, el formulari ha de tenir
            tots els camps emplenats.
            """), )
    # 1. Identificaci´o dels membres que presenten la proposta
    form.mode(one='display')

    one = TextLine(
        title=_(u"1. Identificació dels membres que presenten la proposta"), )
    numMembres = TextLine(title=_(u"Nombre de membres que fan la proposta"),
                          required=True)

    nomsMembres = TextLine(
        title=_(u"Nom i cognoms separats amb comes"),
        description=_(u"Cal annexar un document amb el nom i cognom, \
            el DNI i la signatura dels membres que presenten la \
            proposta (informació no pública)"),
        required=True)

    # 2. Identificacio de la persona que fa de ponent
    form.mode(two='display')
    two = TextLine(title=_(u"2. Identificació de la persona que fa de ponent"))

    nomPonent = TextLine(title=_(u"Nom i cognoms"), required=False)

    email = TextLine(title=_(u"Correu electrònic"), required=False)

    tlf = TextLine(title=_(u"Telèfon"), required=True)

    # 3 Punt de l'ordre del dia que es proposa incloure
    form.mode(three='display')
    three = TextLine(
        title=_(u"3. Punt de l'ordre del dia que es proposa incloure"), )

    acord = TextLine(title=_(u"Tipus: Acord"), required=True)

    puntInfo = TextLine(title=_(u"Punt informatiu"), required=True)

    title = TextLine(title=_(u"Enunciat o títol del punt de l'ordre del dia"),
                     required=True)

    justification = TextLine(title=_(u"Justificació"), required=True)

    text = schema.Text(title=_(u"Text que es presenta"), required=True)

    # 4 Annexar documents
    file = NamedBlobFile(title=_(u"4.  Annexar documents"),
                         description=_(u"(màxim 20mb)"))
コード例 #28
0
ファイル: interfaces.py プロジェクト: manhinli/org.bccvl.site
class IMMExperiment(IExperiment):

    directives.widget('function', FunctionsRadioFieldWidget)
    function = Choice(
        title=u'Algorithm',
        vocabulary='sdm_functions_source',
        default=None,
        required=True,
    )

    directives.widget('species_occurrence_dataset',
                      DatasetFieldWidget,
                      genre=['DataGenreSpeciesOccurrence'],
                      errmsg=u"Please select at least 1 occurrence dataset.",
                      vizclass=u'bccvl-occurrence-viz')
    species_occurrence_dataset = TextLine(
        title=u'Species Occurrence Datasets',
        default=None,
        required=True,
    )

    directives.widget('species_absence_dataset',
                      DatasetFieldWidget,
                      genre=['DataGenreSpeciesAbsence'],
                      errmsg=u"Please select at least 1 absence dataset.",
                      vizclass=u'bccvl-absence-viz')
    species_absence_dataset = TextLine(
        title=u'Species Absence Datasets',
        default=None,
        required=False,
    )

    directives.widget('scale_down',
                      BoolRadioFieldWidget,
                      true_label=u"Scale to finest resolution",
                      false_label=u"Scale to coarsest resolution")
    scale_down = Bool(
        title=u'Select common resolution',
        description=
        u'Environmental datasets will be scaled to the same resolution. This option allows to select to scale to highest or lowest resolution.',
        default=False,
        required=False)

    directives.widget('datasubsets', DataSubsetsFieldWidget)
    datasubsets = List(
        title=u'Climate & Environmental Data Subsets',
        value_type=Dict(),
        required=True,
    )

    directives.mode(modelling_region=HIDDEN_MODE)
    directives.widget('modelling_region', TextAreaFieldWidget)
    modelling_region = NamedBlobFile(
        title=u"Modelling Region",
        description=
        u"GEOJson describing the geographic region which is used to generate the model.",
        required=False,
    )
コード例 #29
0
class IProductManualBehavior(model.Schema):
    """Product manual behavior.
    """

    manual = NamedBlobFile(
        title=_(u"manual_title", default=u"Product Manual"),
        description=_(u"manual_description", default=u"Manual of Product"),
        required=False,
    )
コード例 #30
0
ファイル: original_file.py プロジェクト: Sinar/sinar.govdocs
class IOriginalFile(model.Schema):
    """
    """

    original_file = NamedBlobFile(
        title=_(u'Original File'),
        description=_(u'Original scan or document'),
        required=False,
    )