Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

domainSuffix ignored by views #10023

Closed
madeupname opened this issue Jul 2, 2016 · 5 comments
Closed

domainSuffix ignored by views #10023

madeupname opened this issue Jul 2, 2016 · 5 comments

Comments

@madeupname
Copy link

Environment:
Windows 8.1
jdk1.8.0_92
Grails 3.1.7

I have upgraded an app from 2.4 to 3.1.7 and notice issues with scaffolding. In my 2.4 app, I had in Config.groovy:

grails.scaffolding.templates.domainSuffix = 'Instance'

And I'm pretty sure that was added by default, which means this will affect a lot of people.

In my controller's index method (rendered by default with the list scaffolding view), this line worked:

    respond possibleDups, model: [companyInstanceCount: Company.count()]

possibleDups is a list that corresponded with companyInstanceList, and the view rendered perfectly.

After upgrading to 3.1.7, both the main body (list) and pagination were empty. After testing, I discovered the following:

  1. domainSuffix appears to change the model name, but not the corresponding variables in the view. Instead of expecting companyInstanceList and companyInstanceCount, it wants companyList and companyCount
  2. adding domainSuffix to application.yml as such did not change this.

grails:
    codegen:
        defaultPackage: com.madeupname.web
    scaffolding:
        templates:
            domainSuffix: Instance

I tested by explicitly setting model variable names::

[companyInstanceList: possibleDups, companyInstanceCount: Company.count()]

domainSuffix is also ignored in static scaffolding, as views generated with

grails generate-views com.madeupname.web.Company

look for companyList, not companyInstanceList, etc.

Right now, the workaround is to:

  1. remove domainSuffix from config
  2. Update all your controllers to remove the word Instance from model variable names

If this was intentional, the Upgrading and Scaffolding sections of the documentation should be updated to prevent confusion.

@osscontributor
Copy link
Member

I believe that is all behaving as expected except for the fact that the scaffolding plugin doesn't take grails.scaffolding.templates.domainSuffix into account. Is that correct?

@madeupname
Copy link
Author

Yes, I think if dynamic scaffolding views respected the domainSuffix setting (as they do in 2.4) all would be good.

@osscontributor
Copy link
Member

This issue should probably be filed against the plugin.

@madeupname
Copy link
Author

In JIRA, I (or an admin) would move this to the correct project, but I don't see a way to do that here. Can you do that?

@osscontributor
Copy link
Member

In JIRA, I (or an admin) would move this to the correct project, but I don't see a way to do that here. Can you do that?

I don't think so. I will just close this issue. Feel free to create a similar one at https://github.com/grails3-plugins/scaffolding/issues if you like.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants