Comments (6)
@bbay Hi!
The API I wrote above is planned for future versions of Panko, currently, it won't work - since Panko::Serializer
constructor doesn't accept a model (in your case user
).
I updated the docs, sorry for the inconvenience - e139348.
from panko_serializer.
Hi @dkulchenko ,
Sorry for late response, the proper solution is to break Panko's API, so instead of what you wrote you could write:
render json: Panko::Response.new(
status: 'active',
user: UserSerializer.new(user)
)
This is something I am planning for a later version (probably 1.*), but not for now.
The current solution will be to use new Panko API (which I will add public documentation soon) is that response creator API.
render(
json: Panko::Response.create do |r|
{
status: 'active',
user: r.serializer(user, UserSerializer)
}
end
)
from panko_serializer.
hello @yosiat
What's the current preferred solution for this?
render(
json: Panko::Response.create do |r|
{
status: 'active',
user: r.serializer(user, UserSerializer)
}
end
)
This worked for me, but I don't see it anywhere in the docs, the first version you provided didn't work for me.
thanks!
from panko_serializer.
thanks!
from panko_serializer.
@bbay closing this issue, feel free to re-open it if you want to ask more questions on this topic.
from panko_serializer.
hello again @yosiat
Following up from my last post where I needed serialization of a single object.
I need now to pass some options and I noticed it is not possible due to the implementation in ResponseCreator (response.rb)
wdyt about adding this change?
# in lib/panko/response.rb
def self.serializer(data, serializer, options = {})
json serializer.new(options).serialize_to_json(data)
end
So I can then do something like this:
render(
json: Panko::Response.create do |r|
{
status: 'active',
user: r.serializer(user, UserSerializer, context: {index: true})
}
end
)
from panko_serializer.
Related Issues (20)
- Delegate + aliases not working as expected HOT 1
- Adding a custom root name for array serializer HOT 1
- Relax `oj` dependency HOT 3
- Is anyone actively maintaining this project? HOT 2
- Using ActiveRecord's pluck when possible
- Serialize attributes which is used `serialize` in active model definition
- Benchmarks task not working HOT 1
- How do I selectively display a key/value pair? HOT 2
- Alias declaration is ignored when method is added HOT 2
- Migration from AMS HOT 3
- Filter on array serializer? HOT 4
- Conditionally include associations in JSON response HOT 3
- Rendering recursive relations HOT 2
- Add context to relations has_one/has_many
- Ability to skip nil values HOT 2
- Loading dynamic field names during serialization HOT 1
- Documentation questions HOT 3
- Status HOT 1
- Serialization of single object with context / options HOT 2
- How to use a raw JSON string inside a serializer? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from panko_serializer.