My requirements:
I want actions tagged by the lowercase controller name (rather than pascal case), so I changed that using c.TagActionsBy(...)
I want a description per tag, so I added this to each controller: [SwaggerTag("Foo")].
But when using both these changes, there is a conflict/bug in the UI:
the new lowercase tags are shown as expected, but no description
the old pascal case tags are also shown, with descriptions
Is it possible to do this?
Related
I would like to have an input-field on my webpage, which allows users to interact with models and perform specific searches within specified models. The system should support various actions, primarily add (+), delete (!) and search (?).
To add a new Todoitem to a todolist, the syntax would be like this:
+todoitem Some text here #todolistname
To delete a post, the syntax would be like this:
!post nameofpost
To search for a post, the syntax would be:
?post nameofpost
The previous examples adds and removes items from the current signed in user. I would also like the command line to support groups (identified by .groupname)
A valid syntax to add a todoitem to todolist with name important
ingroup school would be: +todoitem Some todo text #important.school
Searching for all posts in a group would be: ?post .group
Spaces and order should not matter, except for actual content to be added to model (like the todo text of a todo item). That means +todoitem.school#important Some todo text should give the same result as the input in #1.
Could anyone help me with a way of implementing this effectively in rails? That is how you could effectively search the input-string, decide what the user is trying to do (based on the prefix identificators), and then parsing the input into actual queries ?
Edit:
To clarify the last paragraph, as I might have misused the word 'parsing', I was thinking of going through the input-string letter by letter, and then branching/dividing the information so that it can be easily used by pre-defined functions (which perform the queries).
For a tag system, when entering a new item, I'd like the user to start typing a letter or two and see possible tags...similar to how SO tags work on the website i.e. Ajax.
Is there a way to do this on IOS?
Basically the Add Item screen has some empty text fields where you put the name etc.
I'd like to have an additional empty field where as you enter letters you see possible tags appear below and can then select one to tag the item.
The tags would be served from an entity or table so there would have to be a call to core data to supply them based on the letters typed.
Do I have to implement a full blown tableview to do this? Or is there a way to make the possible tags show up below the textfield box.
Thanks for any suggestions.
You could try a third party development in order to make what you want. In a recent project I have used this one:
https://github.com/EddyBorja/MLPAutoCompleteTextField
Once I switch my context to the DOM of the webview, I want to be able to search those elements by tag, but I get the error that searching by tag is deprecated and to search by class instead. This won't work to find DOM elements by tag. Is there still a way to do it? Thanks!
As per Appium documentation for migrating to 1.0:
We've removed the following locator strategies:
-name
-tag name
... tag name has been replaced by class name. So to find an element by its
UI type, use the class name locator strategy for your client.
Why searching by tag name?
Although Selenium still supports this type of query, Appium decided not to do anymore. Actually when interacting with the device, searching by tag name is very inefficient.
Why would you want to do that? Think about it, if your page has a bit of content, you will end up having many p, div, span tags. Your search will return many elements and then you will have to go thorugh the list and locate the one you are interested in. If your page is very little, then you will probably end up with one tag of the type you are looking for, however why not applying a class and solve the problem?
Classes are not for CSS style
Remember that HTML attribute class was not introduced by W3C for applying CSS style. It is used to provide an element with more informationa bout its purpose in the DOM. When you apply a class to an element, you should do that basing on the role that element holds! Thus locating an element by class is sure better.
So forget searching by tag name. You should change your strategy and apply class names to your tags in your hybrid app. If you do not want to do so, then do not switch to the new version of Appium but this will keep you far from future innovations!
Migrating from a tagname based element location to a class name
orientd one is good practice. That's why you should change too.
maybe this can help
element.getAttribute("class")
We are using Composite C1 version 2.1.1 with static C# data. This data is localizable (ILocalizedControlled) and is shown on top of the data tree (TreeDefinitions\GlobalData.xml). Users are able to translate the data to their selected language, but somehow it is possible to "Edit" the data before translating it. This means that when they do it wrong (i.e. in stead of first choosing "Translate Data" and then "Edit", choose "Edit" directly) translated data will appear on the source language site. Which is very annoying because the source data is lost as well.
Seems that when choosing a data item only "Translate Data" should be possible, but now four buttons are shown (Translate Data, Edit, Add and Delete). So I would like to be able to change this behavior, but can't seem to find where or how to influence this.
Hope anyone can help.
somehow it is possible to "Edit" the data before translating it.
This is because in your tree definition (TreeDefinitions\GlobalData.xml), you explicitly use EditDataAction, which does what it is supposed to do: allow editing an item using the standard edit workflow.
I suggest that instead, you create and use a custom workflow for editing items, which might have a logic to allow editing only if the data item is translated in the current language.
I don't have a ready-to-use code for that but you can check samples for custom workflows here.
Also, in the upcoming version 4.1 of Composite C1 (currently beta), you don't need to create tree definitions for static data types. They are available in the C1 Console out of the box. And you can add, edit and delete items of these types there, and the Translation feature on localized types works as expected.
Compare:
The item exposed via a Tree Definition (the issue you mentioned)
And the same item available under "Static Datatypes" (a new feature in 4.1)
I'm working with RoR and I was wondering how can I translate Acts As Taggable On tags without having to manually insert it every time I use a tag again?
Example:
I have a Post (title and body in English) and I create it with tags "shoes, dress, beauty".
I've title and body translated to Japanese in a text file, so I just need to copy/paste them (I'm using Globalize2 plugin to manage translations).
Then I need to add Japanese tags, so I search for translation and add it.
Now I know how to write these three words to Japanese, but I don't want to have to translate them every time I use the same tag.
Next time I create a post with the "shoes" tag, I want that the Japanese version already has the translated term.
What do you suggest? Abandon Acts As Taggable On and create a custom Tags model with a habtm relationship with Post? Subclass the Acts As Taggable On model?
Thanks in advance.
You should be able to simply create your own controller, views and routes and CRUD tags as you see fit by adding whatever fields you require to the db table with no need to subclass the tag model. Personally unless there's some fancy cloud calculation or so forth with this plugin I would roll your own as it's pretty basic. It would also be a good exercise to look through the plugin and gain an understanding of its functionality.