[librecat-dev] unable to import departments using documented methods

Patrick Hochstenbach Patrick.Hochstenbach at UGent.be
Wed Jan 31 14:53:18 CET 2018


Hi Jonathan

The syntax is correct. The “# Tree.yml” on top of your YAML file is too much and shouldn’t be there (I deleted this line in the Wiki page).
With this file you can:

$ bin/librecat department tree /tmp/your.file.yml
$ make generate

and look at the results at: http://localhost:5001/department

Cheers
Patrick

> On 31 Jan 2018, at 14:10, Jonathan NORRIS <jnorris at ist.ac.at> wrote:
> 
> Hello,
> 
> I am trying to import departments into librecat using the methods documented here: https://github.com/LibreCat/LibreCat/wiki/Import-Departments
> 
> First I tried using the 'tree' method but it did not work. My yaml syntax looks good and I even tried to do an import of the example in the documentation:
> 
> # Tree.yml
> ---
> tree:
>   GUK:
>     name: Global Campus Korea
>     display: Global Campus Korea (GUK)
>     tree:
>       KR01:
>         name: Department of Environmental Technology, Food Technology and Molecular Biotechnology
>         display: Department of Environmental Technology, Food Technology and Molecular Biotechnology (KR01)
>       KR71:
>         name: Admissions and enrollment office
>         display: Admissions and enrollment office (KR71)
>       KR73:
>         name: Recruitment office
>         display: Recruitment office (KR73)
> ...
> 
> 
> 
> I added the above to a file called test_import.yml and ran 'bin/librecat department tree /path/to/test_import.yml', but nothing was imported.
> 
> Looking into the code, in 'LibreCat/Cmd/department.pm':
> 
>     from line 150, in sub _tree_parse:
> 
>         my $importer = Catmandu->importer('YAML', file => $file);
>         my $HASH     = $importer->first;
>         my $helper   = LibreCat::App::Helper::Helpers->new;
> 
>         print "$HASH \n";
> 
> My print statement gives the error: Use of uninitialized value $HASH in concatenation (.) or string
> 
> So the problem seems to be in the Catmandu importer, but I don't know were to begin looking for the problem in there.
> 
> 
> Second I tried importing using the other format:
> 
> ---
> _id: KR73
> name: Recruitment office
> display: Recruitment office (KR73)
> layer: 2
> tree:
> - _id: GUK
> ...
> 
> 
> I tried this:
> 
>     ---
>     _id: IST
>     name: IST Austria
>     display: IST Austria
>     layer: 1
>     ---
>     _id: Barton
>     name: Barton
>     display: Barton Group
>     layer: 2
>     tree:
>       - _id: IST
>     ...
> 
> But only the Barton group is inserted and I get this message:
> 
>     IST
>     ERROR: not a valid department
>     /tree: Missing property.
>     added Barton
> 
> And in the interface Barton is under a node named '0'.
> 
> I've tried a lot of different variations of the format above trying to have IST as my root node with Barton underneath it but could not achieve this, I could only get them to exist at the same level or to both exist under two separate nodes called '0'.
> 
> I would have thought you would need no 'tree' attribute when defining a root note but I get the 'missing property' error whenever it is left out.
> 
> 
> Can anyone give me some advice on what to do here? It would be great if the 'tree' import worked as I already have a full representation of our organization in this format.
> 
> Thanks,
> Jonathan Norris,
> IST Austria
> 
> 
> _______________________________________________
> librecat-dev mailing list
> - send list mails to librecat-dev at lists.uni-bielefeld.de
> - to unsubscribe or change options, visit https://lists.uni-bielefeld.de/mailman2/cgi/unibi/listinfo/librecat-dev
> - project website: http://librecat.org/

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: Message signed with OpenPGP
URL: <http://lists.uni-bielefeld.de/mailman2/unibi/public/librecat-dev/attachments/20180131/302378aa/attachment.asc>


More information about the librecat-dev mailing list